Generated by Cython 0.24
Yellow lines hint at Python interaction.
Click on a line that starts with a "+" to see the C code that Cython generated for it.
Raw output: libEVOLVE.c
+0001: # cython: boundscheck=False, nonecheck=False, wraparound=False, cdivision=True
__pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
0002: from __future__ import division
0003:
+0004: import math
__pyx_t_1 = __Pyx_Import(__pyx_n_s_math, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_math, __pyx_t_1) < 0) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0005: import os
__pyx_t_1 = __Pyx_Import(__pyx_n_s_os, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_os, __pyx_t_1) < 0) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0006: import random
__pyx_t_1 = __Pyx_Import(__pyx_n_s_random, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_random, __pyx_t_1) < 0) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0007: import sys
__pyx_t_1 = __Pyx_Import(__pyx_n_s_sys, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_sys, __pyx_t_1) < 0) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0008: import time
__pyx_t_1 = __Pyx_Import(__pyx_n_s_time, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_time, __pyx_t_1) < 0) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
0009:
+0010: import cv2
__pyx_t_1 = __Pyx_Import(__pyx_n_s_cv2, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_cv2, __pyx_t_1) < 0) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
0011:
+0012: import libCOLOR as COLOR
__pyx_t_1 = __Pyx_Import(__pyx_n_s_libCOLOR, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_COLOR, __pyx_t_1) < 0) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0013: import libCONVERT as conv
__pyx_t_1 = __Pyx_Import(__pyx_n_s_libCONVERT, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_conv, __pyx_t_1) < 0) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0014: import libMETROPOLIS as met
__pyx_t_1 = __Pyx_Import(__pyx_n_s_libMETROPOLIS, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_met, __pyx_t_1) < 0) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0015: import libMORPH as morph
__pyx_t_1 = __Pyx_Import(__pyx_n_s_libMORPH, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_morph, __pyx_t_1) < 0) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0016: import numpy as np
__pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
0017:
0018:
0019: from libc.math cimport ceil
0020:
0021:
0022: cimport numpy as np
0023: cimport cython
0024: # from cython.parallel import prange
0025:
0026:
+0027: cdef float pi = np.pi
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_pi); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_2); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_v_9libEVOLVE_pi = __pyx_t_3;
0028:
+0029: def plantseed(int myseed):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_1plantseed(PyObject *__pyx_self, PyObject *__pyx_arg_myseed); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_1plantseed = {"plantseed", (PyCFunction)__pyx_pw_9libEVOLVE_1plantseed, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_1plantseed(PyObject *__pyx_self, PyObject *__pyx_arg_myseed) {
int __pyx_v_myseed;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("plantseed (wrapper)", 0);
assert(__pyx_arg_myseed); {
__pyx_v_myseed = __Pyx_PyInt_As_int(__pyx_arg_myseed); if (unlikely((__pyx_v_myseed == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 29, __pyx_L3_error)
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L3_error:;
__Pyx_AddTraceback("libEVOLVE.plantseed", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
__pyx_r = __pyx_pf_9libEVOLVE_plantseed(__pyx_self, ((int)__pyx_v_myseed));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_plantseed(CYTHON_UNUSED PyObject *__pyx_self, int __pyx_v_myseed) {
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("plantseed", 0);
/* … */
/* function exit code */
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_AddTraceback("libEVOLVE.plantseed", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
__pyx_L0:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__11 = PyTuple_Pack(2, __pyx_n_s_myseed, __pyx_n_s_myseed); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(0, 29, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__11);
__Pyx_GIVEREF(__pyx_tuple__11);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_1plantseed, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_plantseed, __pyx_t_2) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_plantseed, 29, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 29, __pyx_L1_error)
+0030: if myseed > 0:
__pyx_t_1 = ((__pyx_v_myseed > 0) != 0);
if (__pyx_t_1) {
/* … */
}
+0031: np.random.seed(myseed)
__pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_random); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_seed); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_myseed); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_3))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); } } if (!__pyx_t_5) { __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_GOTREF(__pyx_t_2); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+0032: random.seed(myseed)
__pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_random); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_seed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_myseed); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_4) { __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GOTREF(__pyx_t_2); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_3); __pyx_t_3 = 0; __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
0033:
+0034: cdef bresint(np.ndarray[np.int_t, ndim=2] I, int xo, int yo, int r):
static PyObject *__pyx_f_9libEVOLVE_bresint(PyArrayObject *__pyx_v_I, int __pyx_v_xo, int __pyx_v_yo, int __pyx_v_r) {
PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_x;
PY_LONG_LONG __pyx_v_y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("bresint", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 34, __pyx_L1_error)
}
__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1];
/* … */
/* function exit code */
__pyx_L1_error:;
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.bresint", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
0035: cdef long long dum, x, y
+0036: x = r
__pyx_v_x = __pyx_v_r;
+0037: y = 0
__pyx_v_y = 0;
+0038: dum = 1 - x
__pyx_v_dum = (1 - __pyx_v_x);
+0039: while x >= y:
while (1) {
__pyx_t_1 = ((__pyx_v_x >= __pyx_v_y) != 0);
if (!__pyx_t_1) break;
+0040: I[x + xo, y + yo] = 1
__pyx_t_2 = (__pyx_v_x + __pyx_v_xo);
__pyx_t_3 = (__pyx_v_y + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_3, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0041: I[y + xo, x + yo] = 1
__pyx_t_4 = (__pyx_v_y + __pyx_v_xo);
__pyx_t_5 = (__pyx_v_x + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_4, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_5, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0042: I[-x + xo, y + yo] = 1
__pyx_t_6 = ((-__pyx_v_x) + __pyx_v_xo);
__pyx_t_7 = (__pyx_v_y + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_6, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_7, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0043: I[-y + xo, x + yo] = 1
__pyx_t_8 = ((-__pyx_v_y) + __pyx_v_xo);
__pyx_t_9 = (__pyx_v_x + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_8, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_9, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0044: I[-x + xo, -y + yo] = 1
__pyx_t_10 = ((-__pyx_v_x) + __pyx_v_xo);
__pyx_t_11 = ((-__pyx_v_y) + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_10, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_11, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0045: I[-y + xo, -x + yo] = 1
__pyx_t_12 = ((-__pyx_v_y) + __pyx_v_xo);
__pyx_t_13 = ((-__pyx_v_x) + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_12, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_13, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0046: I[x + xo, -y + yo] = 1
__pyx_t_14 = (__pyx_v_x + __pyx_v_xo);
__pyx_t_15 = ((-__pyx_v_y) + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_14, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_15, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0047: I[y + xo, -x + yo] = 1
__pyx_t_16 = (__pyx_v_y + __pyx_v_xo);
__pyx_t_17 = ((-__pyx_v_x) + __pyx_v_yo);
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_16, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_17, __pyx_pybuffernd_I.diminfo[1].strides) = 1;
+0048: y = y + 1
__pyx_v_y = (__pyx_v_y + 1);
+0049: if dum <= 0:
__pyx_t_1 = ((__pyx_v_dum <= 0) != 0);
if (__pyx_t_1) {
/* … */
goto __pyx_L5;
}
+0050: dum = dum + 2 * y + 1
__pyx_v_dum = ((__pyx_v_dum + (2 * __pyx_v_y)) + 1);
0051: else:
+0052: x = x - 1
/*else*/ {
__pyx_v_x = (__pyx_v_x - 1);
+0053: dum = dum + 2 * (y - x) + 1
__pyx_v_dum = ((__pyx_v_dum + (2 * (__pyx_v_y - __pyx_v_x))) + 1);
}
__pyx_L5:;
}
+0054: return I
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(((PyObject *)__pyx_v_I)); __pyx_r = ((PyObject *)__pyx_v_I); goto __pyx_L0;
0055:
+0056: cdef void setwindows(int sa):
static void __pyx_f_9libEVOLVE_setwindows(int __pyx_v_sa) {
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("setwindows", 0);
/* … */
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_WriteUnraisable("libEVOLVE.setwindows", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
__pyx_L0:;
__Pyx_RefNannyFinishContext();
}
+0057: if sa == 0:
switch (__pyx_v_sa) {
case 0:
/* … */
break;
+0058: cv2.namedWindow("Microstructure Evolution Grey Scale", cv2.WINDOW_NORMAL)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_namedWindow); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_WINDOW_NORMAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; __pyx_t_5 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_5 = 1; } } __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_2) { __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); __pyx_t_2 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0059: cv2.destroyWindow("Microstructure Evolution Grey Scale")
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_destroyWindow); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple_, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* … */ __pyx_tuple_ = PyTuple_Pack(1, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); if (unlikely(!__pyx_tuple_)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple_); __Pyx_GIVEREF(__pyx_tuple_);
+0060: elif sa == 1:
case 1:
/* … */
break;
+0061: cv2.namedWindow("Microstructure Evolution Grey Scale", cv2.WINDOW_NORMAL)
__pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_namedWindow); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_WINDOW_NORMAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; __pyx_t_5 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_5 = 1; } } __pyx_t_2 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (__pyx_t_3) { __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __pyx_t_3 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); PyTuple_SET_ITEM(__pyx_t_2, 0+__pyx_t_5, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_2, 1+__pyx_t_5, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0062: cv2.namedWindow("Microstructure Evolution Random Color", cv2.WINDOW_NORMAL)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_namedWindow); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_WINDOW_NORMAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; __pyx_t_5 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_2, function); __pyx_t_5 = 1; } } __pyx_t_3 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Random); PyTuple_SET_ITEM(__pyx_t_3, 0+__pyx_t_5, __pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 1+__pyx_t_5, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0063: cv2.destroyWindow("Microstructure Evolution Random Color")
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_destroyWindow); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* … */ __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_s_Microstructure_Evolution_Random); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__2); __Pyx_GIVEREF(__pyx_tuple__2);
+0064: elif sa == 2:
case 2:
/* … */
break;
+0065: cv2.namedWindow("Microstructure Evolution Grey Scale", cv2.WINDOW_NORMAL)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 65, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_namedWindow); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 65, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 65, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_WINDOW_NORMAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 65, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; __pyx_t_5 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_5 = 1; } } __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 65, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_2) { __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); __pyx_t_2 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 65, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0066: cv2.namedWindow("Microstructure Evolution Random Color", cv2.WINDOW_NORMAL)
__pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_namedWindow); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_WINDOW_NORMAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; __pyx_t_5 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_5 = 1; } } __pyx_t_2 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (__pyx_t_3) { __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3); __pyx_t_3 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Random); PyTuple_SET_ITEM(__pyx_t_2, 0+__pyx_t_5, __pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_2, 1+__pyx_t_5, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0067: cv2.destroyWindow("Microstructure Evolution Grey Scale")
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_destroyWindow); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* … */ __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__3); __Pyx_GIVEREF(__pyx_tuple__3);
+0068: elif sa == 3:
case 3:
/* … */
break;
default: break;
}
+0069: cv2.namedWindow("Microstructure Evolution Grey Scale", cv2.WINDOW_NORMAL)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_namedWindow); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_WINDOW_NORMAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; __pyx_t_5 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_2, function); __pyx_t_5 = 1; } } __pyx_t_3 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); PyTuple_SET_ITEM(__pyx_t_3, 0+__pyx_t_5, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 1+__pyx_t_5, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0070: cv2.namedWindow("Microstructure Evolution Random Color", cv2.WINDOW_NORMAL)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_namedWindow); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_WINDOW_NORMAL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; __pyx_t_5 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_5 = 1; } } __pyx_t_6 = PyTuple_New(2+__pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_2) { __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); __pyx_t_2 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Random); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_5, __pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_5, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
0071:
+0072: cdef void showriteframe(bint sa, bint sf, fd, int r, np.ndarray[np.int64_t, ndim=2] I, np.ndarray[np.double_t, ndim=3] Col , int p, int Iter, int framepause):
static void __pyx_f_9libEVOLVE_showriteframe(int __pyx_v_sa, int __pyx_v_sf, PyObject *__pyx_v_fd, int __pyx_v_r, PyArrayObject *__pyx_v_I, PyArrayObject *__pyx_v_Col, int __pyx_v_p, int __pyx_v_Iter, int __pyx_v_framepause) {
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("showriteframe", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 72, __pyx_L1_error)
}
__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1];
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_v_Col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_double_t, PyBUF_FORMAT| PyBUF_STRIDES, 3, 0, __pyx_stack) == -1)) __PYX_ERR(0, 72, __pyx_L1_error)
}
__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2];
/* … */
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_10);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_WriteUnraisable("libEVOLVE.showriteframe", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_RefNannyFinishContext();
}
0073:
+0074: if sa == 2:
switch (__pyx_v_sa) {
case 2:
/* … */
break;
+0075: cv2.imshow("Microstructure Evolution Random Color", Col)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_imshow); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_4 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_2) { __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); __pyx_t_2 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Random); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_kp_s_Microstructure_Evolution_Random); __Pyx_INCREF(((PyObject *)__pyx_v_Col)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Col)); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, ((PyObject *)__pyx_v_Col)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0076: cv2.waitKey(framepause)
__pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_waitKey); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_framepause); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_2) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); __pyx_t_2 = NULL; __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_3); __pyx_t_3 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0077: elif sa == 0:
case 0:
break;
0078: pass
+0079: elif sa == 1:
case 1:
/* … */
break;
+0080: cv2.imshow("Microstructure Evolution Grey Scale", I / p)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_imshow); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_int(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = __Pyx_PyNumber_Divide(((PyObject *)__pyx_v_I), __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_4 = 1; } } __pyx_t_2 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); PyTuple_SET_ITEM(__pyx_t_2, 0+__pyx_t_4, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_2, 1+__pyx_t_4, __pyx_t_3); __pyx_t_3 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0081: cv2.waitKey(framepause)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_waitKey); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_framepause); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_2, function); } } if (!__pyx_t_3) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0082: elif sa == 3:
case 3:
/* … */
break;
default: break;
}
+0083: cv2.imshow("Microstructure Evolution Grey Scale", I / p)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_imshow); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_p); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_6 = __Pyx_PyNumber_Divide(((PyObject *)__pyx_v_I), __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_4 = 1; } } __pyx_t_3 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__pyx_t_2) { __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Grey_Sc); PyTuple_SET_ITEM(__pyx_t_3, 0+__pyx_t_4, __pyx_kp_s_Microstructure_Evolution_Grey_Sc); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_3, 1+__pyx_t_4, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0084: cv2.imshow("Microstructure Evolution Random Color", Col)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_imshow); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_4 = 1; } } __pyx_t_6 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(__pyx_kp_s_Microstructure_Evolution_Random); __Pyx_GIVEREF(__pyx_kp_s_Microstructure_Evolution_Random); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_4, __pyx_kp_s_Microstructure_Evolution_Random); __Pyx_INCREF(((PyObject *)__pyx_v_Col)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Col)); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_4, ((PyObject *)__pyx_v_Col)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0085: cv2.waitKey(framepause)
__pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_waitKey); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_framepause); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_2 = PyTuple_New(1+1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_2, 0+1, __pyx_t_3); __pyx_t_3 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
0086:
+0087: if sf is True:
__pyx_t_7 = ((__pyx_v_sf == 1) != 0);
if (__pyx_t_7) {
/* … */
}
+0088: if sa == 0 or sa == 2 :
switch (__pyx_v_sa) {
case 0:
case 2:
/* … */
break;
+0089: cv2.imwrite(str(fd + "/" + str(Iter) + 'Color_' + '{0:06d}'.format(r) + '.png'), Col * 255)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_imwrite); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Add(__pyx_v_fd, __pyx_kp_s__4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_Iter); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Add(__pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = PyNumber_Add(__pyx_t_5, __pyx_n_s_Color); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_0_06d, __pyx_n_s_format); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_r); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_9)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_9); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_9) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_10 = PyTuple_New(1+1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_10, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Add(__pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Add(__pyx_t_6, __pyx_kp_s_png); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Multiply(((PyObject *)__pyx_v_Col), __pyx_int_255); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_2))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_2, function); __pyx_t_4 = 1; } } __pyx_t_10 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); if (__pyx_t_3) { __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_3); __pyx_t_3 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_4, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_4, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0090: elif sa == 1:
case 1:
/* … */
break;
+0091: cv2.imwrite(str(fd + "/" + str(Iter) + 'Grey_' + '{0:06d}'.format(r) + +'.png'), I * 255 / p)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_imwrite); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyNumber_Add(__pyx_v_fd, __pyx_kp_s__4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_6 = __Pyx_PyInt_From_int(__pyx_v_Iter); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Add(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Add(__pyx_t_5, __pyx_n_s_Grey); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_0_06d, __pyx_n_s_format); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_r); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_2))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_2); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_2, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_3); __pyx_t_3 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_9, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Positive(__pyx_kp_s_png); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Multiply(((PyObject *)__pyx_v_I), __pyx_int_255); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_p); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_9 = __Pyx_PyNumber_Divide(__pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_10))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_10); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_10, function); __pyx_t_4 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_2) { __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); __pyx_t_2 = NULL; } __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_4, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_4, __pyx_t_9); __pyx_t_6 = 0; __pyx_t_9 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0092: elif sa == 3:
case 3:
/* … */
break;
default: break;
}
+0093: cv2.imwrite(str(fd + "/" + str(Iter) + 'Grey_' + '{0:06d}'.format(r) + '.png'), I * 255 / p)
__pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_imwrite); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __pyx_t_10 = PyNumber_Add(__pyx_v_fd, __pyx_kp_s__4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_9 = __Pyx_PyInt_From_int(__pyx_v_Iter); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_6, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Add(__pyx_t_10, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = PyNumber_Add(__pyx_t_6, __pyx_n_s_Grey); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_0_06d, __pyx_n_s_format); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_r); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_10))) { __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_10); if (likely(__pyx_t_3)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_10, function); } } if (!__pyx_t_3) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_10, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_3); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_3); __pyx_t_3 = NULL; __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_2); __pyx_t_2 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __pyx_t_10 = PyNumber_Add(__pyx_t_9, __pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Add(__pyx_t_10, __pyx_kp_s_png); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_10, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __pyx_t_10 = PyNumber_Multiply(((PyObject *)__pyx_v_I), __pyx_int_255); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_9 = __Pyx_PyInt_From_int(__pyx_v_p); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_8 = __Pyx_PyNumber_Divide(__pyx_t_10, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_9)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_9); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_4 = 1; } } __pyx_t_10 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); if (__pyx_t_9) { __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9); __pyx_t_9 = NULL; } __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_10, 0+__pyx_t_4, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_10, 1+__pyx_t_4, __pyx_t_8); __pyx_t_6 = 0; __pyx_t_8 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0094: cv2.imwrite(str(fd + "/" + str(Iter) + 'Color_' + '{0:06d}'.format(r) + '.png'), Col * 255)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_imwrite); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Add(__pyx_v_fd, __pyx_kp_s__4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_Iter); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_6, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Add(__pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyNumber_Add(__pyx_t_6, __pyx_n_s_Color); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_0_06d, __pyx_n_s_format); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_9 = __Pyx_PyInt_From_int(__pyx_v_r); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_2 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_2)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_2); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_2) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_9); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_3 = PyTuple_New(1+1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); __pyx_t_2 = NULL; __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_3, 0+1, __pyx_t_9); __pyx_t_9 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Add(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Add(__pyx_t_5, __pyx_kp_s_png); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(((PyObject *)(&PyString_Type)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Multiply(((PyObject *)__pyx_v_Col), __pyx_int_255); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; __pyx_t_4 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_10))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_10); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_10); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_10, function); __pyx_t_4 = 1; } } __pyx_t_3 = PyTuple_New(2+__pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_3, 0+__pyx_t_4, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_3, 1+__pyx_t_4, __pyx_t_5); __pyx_t_6 = 0; __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
0095:
+0096: cdef long long checkalive(np.ndarray[np.int64_t, ndim=2] I, int m, int n, int Io, int xmin, int xmax, int ymin, int ymax):
static PY_LONG_LONG __pyx_f_9libEVOLVE_checkalive(PyArrayObject *__pyx_v_I, int __pyx_v_m, int __pyx_v_n, int __pyx_v_Io, int __pyx_v_xmin, int __pyx_v_xmax, int __pyx_v_ymin, int __pyx_v_ymax) {
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_io;
PY_LONG_LONG __pyx_v_jo;
PY_LONG_LONG __pyx_v_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
PY_LONG_LONG __pyx_r;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("checkalive", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 96, __pyx_L1_error)
}
__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1];
/* … */
/* function exit code */
__pyx_L1_error:;
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_WriteUnraisable("libEVOLVE.checkalive", __pyx_clineno, __pyx_lineno, __pyx_filename, 0, 0);
__pyx_r = 0;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
0097:
0098: cdef long long i , j, io, jo, a
+0099: a = 1
__pyx_v_a = 1;
+0100: for i in range(xmin, xmax + 1):
__pyx_t_1 = (__pyx_v_xmax + 1);
for (__pyx_t_2 = __pyx_v_xmin; __pyx_t_2 < __pyx_t_1; __pyx_t_2+=1) {
__pyx_v_i = __pyx_t_2;
+0101: for j in range(ymin, ymax + 1):
__pyx_t_3 = (__pyx_v_ymax + 1);
for (__pyx_t_4 = __pyx_v_ymin; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) {
__pyx_v_j = __pyx_t_4;
+0102: if I[i, j] == Io:
__pyx_t_5 = __pyx_v_i;
__pyx_t_6 = __pyx_v_j;
__pyx_t_7 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_5, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_6, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_7) {
/* … */
}
}
}
+0103: io, jo = i + 1, j
__pyx_t_8 = (__pyx_v_i + 1);
__pyx_t_9 = __pyx_v_j;
__pyx_v_io = __pyx_t_8;
__pyx_v_jo = __pyx_t_9;
+0104: if 0 <= io <= m - 1 and 0 <= jo <= n - 1:
__pyx_t_10 = (0 <= __pyx_v_io);
if (__pyx_t_10) {
__pyx_t_10 = (__pyx_v_io <= (__pyx_v_m - 1));
}
__pyx_t_11 = (__pyx_t_10 != 0);
if (__pyx_t_11) {
} else {
__pyx_t_7 = __pyx_t_11;
goto __pyx_L9_bool_binop_done;
}
__pyx_t_11 = (0 <= __pyx_v_jo);
if (__pyx_t_11) {
__pyx_t_11 = (__pyx_v_jo <= (__pyx_v_n - 1));
}
__pyx_t_10 = (__pyx_t_11 != 0);
__pyx_t_7 = __pyx_t_10;
__pyx_L9_bool_binop_done:;
if (__pyx_t_7) {
/* … */
}
+0105: if I[io, jo] == 0:
__pyx_t_9 = __pyx_v_io;
__pyx_t_8 = __pyx_v_jo;
__pyx_t_7 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_9, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_8, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_7) {
/* … */
}
+0106: return a
__pyx_r = __pyx_v_a;
goto __pyx_L0;
+0107: io, jo = i - 1, j
__pyx_t_12 = (__pyx_v_i - 1);
__pyx_t_13 = __pyx_v_j;
__pyx_v_io = __pyx_t_12;
__pyx_v_jo = __pyx_t_13;
+0108: if 0 <= io <= m - 1 and 0 <= jo <= n - 1:
__pyx_t_10 = (0 <= __pyx_v_io);
if (__pyx_t_10) {
__pyx_t_10 = (__pyx_v_io <= (__pyx_v_m - 1));
}
__pyx_t_11 = (__pyx_t_10 != 0);
if (__pyx_t_11) {
} else {
__pyx_t_7 = __pyx_t_11;
goto __pyx_L13_bool_binop_done;
}
__pyx_t_11 = (0 <= __pyx_v_jo);
if (__pyx_t_11) {
__pyx_t_11 = (__pyx_v_jo <= (__pyx_v_n - 1));
}
__pyx_t_10 = (__pyx_t_11 != 0);
__pyx_t_7 = __pyx_t_10;
__pyx_L13_bool_binop_done:;
if (__pyx_t_7) {
/* … */
}
+0109: if I[io, jo] == 0:
__pyx_t_13 = __pyx_v_io;
__pyx_t_12 = __pyx_v_jo;
__pyx_t_7 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_13, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_12, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_7) {
/* … */
}
+0110: return a
__pyx_r = __pyx_v_a;
goto __pyx_L0;
+0111: io, jo = i, j + 1
__pyx_t_14 = __pyx_v_i;
__pyx_t_15 = (__pyx_v_j + 1);
__pyx_v_io = __pyx_t_14;
__pyx_v_jo = __pyx_t_15;
+0112: if 0 <= io <= m - 1 and 0 <= jo <= n - 1:
__pyx_t_10 = (0 <= __pyx_v_io);
if (__pyx_t_10) {
__pyx_t_10 = (__pyx_v_io <= (__pyx_v_m - 1));
}
__pyx_t_11 = (__pyx_t_10 != 0);
if (__pyx_t_11) {
} else {
__pyx_t_7 = __pyx_t_11;
goto __pyx_L17_bool_binop_done;
}
__pyx_t_11 = (0 <= __pyx_v_jo);
if (__pyx_t_11) {
__pyx_t_11 = (__pyx_v_jo <= (__pyx_v_n - 1));
}
__pyx_t_10 = (__pyx_t_11 != 0);
__pyx_t_7 = __pyx_t_10;
__pyx_L17_bool_binop_done:;
if (__pyx_t_7) {
/* … */
}
+0113: if I[io, jo] == 0:
__pyx_t_15 = __pyx_v_io;
__pyx_t_14 = __pyx_v_jo;
__pyx_t_7 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_15, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_14, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_7) {
/* … */
}
+0114: return a
__pyx_r = __pyx_v_a;
goto __pyx_L0;
+0115: io, jo = i, j - 1
__pyx_t_16 = __pyx_v_i;
__pyx_t_17 = (__pyx_v_j - 1);
__pyx_v_io = __pyx_t_16;
__pyx_v_jo = __pyx_t_17;
+0116: if 0 <= io <= m - 1 and 0 <= jo <= n - 1:
__pyx_t_10 = (0 <= __pyx_v_io);
if (__pyx_t_10) {
__pyx_t_10 = (__pyx_v_io <= (__pyx_v_m - 1));
}
__pyx_t_11 = (__pyx_t_10 != 0);
if (__pyx_t_11) {
} else {
__pyx_t_7 = __pyx_t_11;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_11 = (0 <= __pyx_v_jo);
if (__pyx_t_11) {
__pyx_t_11 = (__pyx_v_jo <= (__pyx_v_n - 1));
}
__pyx_t_10 = (__pyx_t_11 != 0);
__pyx_t_7 = __pyx_t_10;
__pyx_L21_bool_binop_done:;
if (__pyx_t_7) {
/* … */
}
+0117: if I[io, jo] == 0:
__pyx_t_17 = __pyx_v_io;
__pyx_t_16 = __pyx_v_jo;
__pyx_t_7 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_17, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_16, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_7) {
/* … */
}
+0118: return a
__pyx_r = __pyx_v_a;
goto __pyx_L0;
+0119: a = 0
__pyx_v_a = 0;
+0120: return a
__pyx_r = __pyx_v_a; goto __pyx_L0;
0121:
+0122: cdef randindex2D(int m, int n, int p):
static PyObject *__pyx_f_9libEVOLVE_randindex2D(int __pyx_v_m, int __pyx_v_n, int __pyx_v_p) {
PyObject *__pyx_v_a = NULL;
PyObject *__pyx_v_X = NULL;
PyObject *__pyx_v_Y = NULL;
PY_LONG_LONG __pyx_v_i;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("randindex2D", 0);
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_AddTraceback("libEVOLVE.randindex2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = 0;
__pyx_L0:;
__Pyx_XDECREF(__pyx_v_a);
__Pyx_XDECREF(__pyx_v_X);
__Pyx_XDECREF(__pyx_v_Y);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
0123:
+0124: a = random.sample(xrange(m * n), p)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_random); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_sample); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_PyInt_From_int((__pyx_v_m * __pyx_v_n)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_xrange, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = NULL; __pyx_t_6 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_6 = 1; } } __pyx_t_7 = PyTuple_New(2+__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_2); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_6, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_6, __pyx_t_4); __pyx_t_2 = 0; __pyx_t_4 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_v_a = __pyx_t_1; __pyx_t_1 = 0;
+0125: X = [0] * p
__pyx_t_1 = PyList_New(1 * ((__pyx_v_p<0) ? 0:__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 125, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); { Py_ssize_t __pyx_temp; for (__pyx_temp=0; __pyx_temp < __pyx_v_p; __pyx_temp++) { __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyList_SET_ITEM(__pyx_t_1, __pyx_temp, __pyx_int_0); } } __pyx_v_X = __pyx_t_1; __pyx_t_1 = 0;
+0126: Y = [0] * p
__pyx_t_1 = PyList_New(1 * ((__pyx_v_p<0) ? 0:__pyx_v_p)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 126, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); { Py_ssize_t __pyx_temp; for (__pyx_temp=0; __pyx_temp < __pyx_v_p; __pyx_temp++) { __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyList_SET_ITEM(__pyx_t_1, __pyx_temp, __pyx_int_0); } } __pyx_v_Y = __pyx_t_1; __pyx_t_1 = 0;
0127: cdef long long i
+0128: for i in range(0, p):
__pyx_t_8 = __pyx_v_p;
for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
__pyx_v_i = __pyx_t_9;
+0129: X[i] = (a[i]) / (n)
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_a, __pyx_v_i, PY_LONG_LONG, 1, __Pyx_PyInt_From_PY_LONG_LONG, 0, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_n); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_7 = __Pyx_PyNumber_Divide(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (unlikely(__Pyx_SetItemInt(__pyx_v_X, __pyx_v_i, __pyx_t_7, PY_LONG_LONG, 1, __Pyx_PyInt_From_PY_LONG_LONG, 0, 0, 0) < 0)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+0130: Y[i] = (a[i]) % (n)
__pyx_t_7 = __Pyx_GetItemInt(__pyx_v_a, __pyx_v_i, PY_LONG_LONG, 1, __Pyx_PyInt_From_PY_LONG_LONG, 0, 0, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_n); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = PyNumber_Remainder(__pyx_t_7, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (unlikely(__Pyx_SetItemInt(__pyx_v_Y, __pyx_v_i, __pyx_t_1, PY_LONG_LONG, 1, __Pyx_PyInt_From_PY_LONG_LONG, 0, 0, 0) < 0)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; }
+0131: X = np.array(X, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_array); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_X); __Pyx_GIVEREF(__pyx_v_X); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_X); __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_2) < 0) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 131, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF_SET(__pyx_v_X, __pyx_t_2); __pyx_t_2 = 0;
+0132: Y = np.array(Y, dtype=np.int64)
__pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_array); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_v_Y); __Pyx_GIVEREF(__pyx_v_Y); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_Y); __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF_SET(__pyx_v_Y, __pyx_t_4); __pyx_t_4 = 0;
0133:
+0134: return X, Y
__Pyx_XDECREF(__pyx_r); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_v_X); __Pyx_GIVEREF(__pyx_v_X); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_X); __Pyx_INCREF(__pyx_v_Y); __Pyx_GIVEREF(__pyx_v_Y); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_Y); __pyx_r = __pyx_t_4; __pyx_t_4 = 0; goto __pyx_L0;
0135:
0136:
0137:
0138:
+0139: def labelsort(long long n, np.ndarray[np.int64_t, ndim=1] X, np.ndarray[np.int64_t, ndim=1] Y):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_3labelsort(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_3labelsort = {"labelsort", (PyCFunction)__pyx_pw_9libEVOLVE_3labelsort, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_9libEVOLVE_3labelsort(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
PY_LONG_LONG __pyx_v_n;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("labelsort (wrapper)", 0);
{
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_n,&__pyx_n_s_X,&__pyx_n_s_Y,0};
PyObject* values[3] = {0,0,0};
if (unlikely(__pyx_kwds)) {
Py_ssize_t kw_args;
const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
switch (pos_args) {
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
case 0: break;
default: goto __pyx_L5_argtuple_error;
}
kw_args = PyDict_Size(__pyx_kwds);
switch (pos_args) {
case 0:
if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_n)) != 0)) kw_args--;
else goto __pyx_L5_argtuple_error;
case 1:
if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_X)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("labelsort", 1, 3, 3, 1); __PYX_ERR(0, 139, __pyx_L3_error)
}
case 2:
if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_Y)) != 0)) kw_args--;
else {
__Pyx_RaiseArgtupleInvalid("labelsort", 1, 3, 3, 2); __PYX_ERR(0, 139, __pyx_L3_error)
}
}
if (unlikely(kw_args > 0)) {
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "labelsort") < 0)) __PYX_ERR(0, 139, __pyx_L3_error)
}
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
goto __pyx_L5_argtuple_error;
} else {
values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
}
__pyx_v_n = __Pyx_PyInt_As_PY_LONG_LONG(values[0]); if (unlikely((__pyx_v_n == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 139, __pyx_L3_error)
__pyx_v_X = ((PyArrayObject *)values[1]);
__pyx_v_Y = ((PyArrayObject *)values[2]);
}
goto __pyx_L4_argument_unpacking_done;
__pyx_L5_argtuple_error:;
__Pyx_RaiseArgtupleInvalid("labelsort", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 139, __pyx_L3_error)
__pyx_L3_error:;
__Pyx_AddTraceback("libEVOLVE.labelsort", __pyx_clineno, __pyx_lineno, __pyx_filename);
__Pyx_RefNannyFinishContext();
return NULL;
__pyx_L4_argument_unpacking_done:;
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_X), __pyx_ptype_5numpy_ndarray, 1, "X", 0))) __PYX_ERR(0, 139, __pyx_L1_error)
if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_Y), __pyx_ptype_5numpy_ndarray, 1, "Y", 0))) __PYX_ERR(0, 139, __pyx_L1_error)
__pyx_r = __pyx_pf_9libEVOLVE_2labelsort(__pyx_self, __pyx_v_n, __pyx_v_X, __pyx_v_Y);
/* function exit code */
goto __pyx_L0;
__pyx_L1_error:;
__pyx_r = NULL;
__pyx_L0:;
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_2labelsort(CYTHON_UNUSED PyObject *__pyx_self, PY_LONG_LONG __pyx_v_n, PyArrayObject *__pyx_v_X, PyArrayObject *__pyx_v_Y) {
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_p;
PyArrayObject *__pyx_v_XX = 0;
PyArrayObject *__pyx_v_YY = 0;
PyArrayObject *__pyx_v_labelsorted = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_XX;
__Pyx_Buffer __pyx_pybuffer_XX;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_YY;
__Pyx_Buffer __pyx_pybuffer_YY;
__Pyx_LocalBuf_ND __pyx_pybuffernd_labelsorted;
__Pyx_Buffer __pyx_pybuffer_labelsorted;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("labelsort", 0);
__pyx_pybuffer_XX.pybuffer.buf = NULL;
__pyx_pybuffer_XX.refcount = 0;
__pyx_pybuffernd_XX.data = NULL;
__pyx_pybuffernd_XX.rcbuffer = &__pyx_pybuffer_XX;
__pyx_pybuffer_YY.pybuffer.buf = NULL;
__pyx_pybuffer_YY.refcount = 0;
__pyx_pybuffernd_YY.data = NULL;
__pyx_pybuffernd_YY.rcbuffer = &__pyx_pybuffer_YY;
__pyx_pybuffer_labelsorted.pybuffer.buf = NULL;
__pyx_pybuffer_labelsorted.refcount = 0;
__pyx_pybuffernd_labelsorted.data = NULL;
__pyx_pybuffernd_labelsorted.rcbuffer = &__pyx_pybuffer_labelsorted;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) __PYX_ERR(0, 139, __pyx_L1_error)
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) __PYX_ERR(0, 139, __pyx_L1_error)
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_2);
__Pyx_XDECREF(__pyx_t_3);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_XX.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_YY.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_labelsorted.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.labelsort", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_XX.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_YY.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_labelsorted.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF((PyObject *)__pyx_v_XX);
__Pyx_XDECREF((PyObject *)__pyx_v_YY);
__Pyx_XDECREF((PyObject *)__pyx_v_labelsorted);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__13 = PyTuple_Pack(8, __pyx_n_s_n, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_k, __pyx_n_s_p, __pyx_n_s_XX, __pyx_n_s_YY, __pyx_n_s_labelsorted); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 139, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__13);
__Pyx_GIVEREF(__pyx_tuple__13);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_3labelsort, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_labelsort, __pyx_t_2) < 0) __PYX_ERR(0, 139, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__14 = (PyObject*)__Pyx_PyCode_New(3, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__13, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_labelsort, 139, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__14)) __PYX_ERR(0, 139, __pyx_L1_error)
0140: # NOTE THAT m is NOT REQUIRED
0141: cdef long long k
+0142: cdef long long p = X.shape[0]
__pyx_v_p = (__pyx_v_X->dimensions[0]);
+0143: cdef np.ndarray[np.int64_t, ndim = 1] XX = np.zeros(p, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 143, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 143, __pyx_L1_error) __pyx_t_6 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_XX.rcbuffer->pybuffer, (PyObject*)__pyx_t_6, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_XX = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_XX.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 143, __pyx_L1_error) } else {__pyx_pybuffernd_XX.diminfo[0].strides = __pyx_pybuffernd_XX.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_XX.diminfo[0].shape = __pyx_pybuffernd_XX.rcbuffer->pybuffer.shape[0]; } } __pyx_t_6 = 0; __pyx_v_XX = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+0144: cdef np.ndarray[np.int64_t, ndim = 1] YY = np.zeros(p, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 144, __pyx_L1_error) __pyx_t_7 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_YY.rcbuffer->pybuffer, (PyObject*)__pyx_t_7, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_YY = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_YY.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 144, __pyx_L1_error) } else {__pyx_pybuffernd_YY.diminfo[0].strides = __pyx_pybuffernd_YY.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_YY.diminfo[0].shape = __pyx_pybuffernd_YY.rcbuffer->pybuffer.shape[0]; } } __pyx_t_7 = 0; __pyx_v_YY = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+0145: cdef np.ndarray[np.int64_t, ndim = 1] labelsorted = np.zeros(p, dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_2) < 0) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 145, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_2); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_labelsorted.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_labelsorted = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_labelsorted.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 145, __pyx_L1_error) } else {__pyx_pybuffernd_labelsorted.diminfo[0].strides = __pyx_pybuffernd_labelsorted.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_labelsorted.diminfo[0].shape = __pyx_pybuffernd_labelsorted.rcbuffer->pybuffer.shape[0]; } } __pyx_t_8 = 0; __pyx_v_labelsorted = ((PyArrayObject *)__pyx_t_2); __pyx_t_2 = 0;
0146:
+0147: labelsorted = np.sort(n * X + Y)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_sort); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyNumber_Multiply(__pyx_t_4, ((PyObject *)__pyx_v_X)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyNumber_Add(__pyx_t_5, ((PyObject *)__pyx_v_Y)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_3))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_3); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); } } if (!__pyx_t_5) { __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_GOTREF(__pyx_t_2); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (!(likely(((__pyx_t_2) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_2, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 147, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_2); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_labelsorted.rcbuffer->pybuffer); __pyx_t_9 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_labelsorted.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_9 < 0)) { PyErr_Fetch(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_labelsorted.rcbuffer->pybuffer, (PyObject*)__pyx_v_labelsorted, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_10); Py_XDECREF(__pyx_t_11); Py_XDECREF(__pyx_t_12); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_10, __pyx_t_11, __pyx_t_12); } } __pyx_pybuffernd_labelsorted.diminfo[0].strides = __pyx_pybuffernd_labelsorted.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_labelsorted.diminfo[0].shape = __pyx_pybuffernd_labelsorted.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_9 < 0)) __PYX_ERR(0, 147, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_labelsorted, ((PyArrayObject *)__pyx_t_2)); __pyx_t_2 = 0;
+0148: for k in range(p):
__pyx_t_13 = __pyx_v_p;
for (__pyx_t_14 = 0; __pyx_t_14 < __pyx_t_13; __pyx_t_14+=1) {
__pyx_v_k = __pyx_t_14;
+0149: XX[k] = labelsorted[k] / n
__pyx_t_15 = __pyx_v_k;
__pyx_t_16 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_XX.rcbuffer->pybuffer.buf, __pyx_t_16, __pyx_pybuffernd_XX.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_labelsorted.rcbuffer->pybuffer.buf, __pyx_t_15, __pyx_pybuffernd_labelsorted.diminfo[0].strides)) / ((__pyx_t_5numpy_int64_t)__pyx_v_n));
+0150: YY[k] = labelsorted[k] % n
__pyx_t_17 = __pyx_v_k;
__pyx_t_18 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_YY.rcbuffer->pybuffer.buf, __pyx_t_18, __pyx_pybuffernd_YY.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_labelsorted.rcbuffer->pybuffer.buf, __pyx_t_17, __pyx_pybuffernd_labelsorted.diminfo[0].strides)) % __pyx_v_n);
}
+0151: return XX, YY
__Pyx_XDECREF(__pyx_r); __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 151, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(((PyObject *)__pyx_v_XX)); __Pyx_GIVEREF(((PyObject *)__pyx_v_XX)); PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_v_XX)); __Pyx_INCREF(((PyObject *)__pyx_v_YY)); __Pyx_GIVEREF(((PyObject *)__pyx_v_YY)); PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_v_YY)); __pyx_r = __pyx_t_2; __pyx_t_2 = 0; goto __pyx_L0;
0152:
0153:
0154: # cdef cutoff(np.ndarray[np.int64_t, ndim=1] X, np.ndarray[np.int64_t, ndim=1] Y, p):
0155: #
0156: # cdef np.ndarray[np.int64_t, ndim = 1] XX = np.zeros(p, dtype=np.int64)
0157: # cdef np.ndarray[np.int64_t, ndim = 1] YY = np.zeros(p, dtype=np.int64)
0158: #
0159: # if X.shape[0] == p:
0160: # return X, Y
0161: # else:
0162: # for i in range(p):
0163: # XX[i] = X[i]
0164: # YY[i] = Y[i]
0165: # return XX, YY
0166:
0167:
0168:
+0169: def Evolve_2D_Isotropic_SiteSaturated_without_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_5Evolve_2D_Isotropic_SiteSaturated_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_5Evolve_2D_Isotropic_SiteSaturated_without_gr2D = {"Evolve_2D_Isotropic_SiteSaturated_without_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_5Evolve_2D_Isotropic_SiteSaturated_without_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_5Evolve_2D_Isotropic_SiteSaturated_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_SiteSaturated_without_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_4Evolve_2D_Isotropic_SiteSaturated_without_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_4Evolve_2D_Isotropic_SiteSaturated_without_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_r;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_SiteSaturated_without_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_21);
__Pyx_XDECREF(__pyx_t_23);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Isotropic_SiteSaturated_without_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__15 = PyTuple_Pack(38, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_r, __pyx_n_s_Io, __pyx_n_s_Iter, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(0, 169, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__15);
__Pyx_GIVEREF(__pyx_tuple__15);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_5Evolve_2D_Isotropic_SiteSaturated_without_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 169, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Isotropic_SiteSaturate, __pyx_t_2) < 0) __PYX_ERR(0, 169, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__16 = (PyObject*)__Pyx_PyCode_New(1, 0, 38, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__15, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Isotropic_SiteSaturate, 169, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__16)) __PYX_ERR(0, 169, __pyx_L1_error)
0170: # Grabbing data from the input object
+0171: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 171, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 171, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+0172: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+0173: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+0174: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 174, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+0175: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 175, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+0176: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+0177: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 177, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+0178: cdef long long asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 178, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_2;
+0179: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 179, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 179, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+0180: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+0181: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
0182:
0183: # Declaring other variables
0184: cdef double tic, toc
0185: cdef long long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, r, Io, Iter
0186: cdef float red, green, blue
+0187: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 187, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 187, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0188: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 188, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 188, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0189: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 189, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 189, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0190: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 190, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 190, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+0191: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 191, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 191, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+0192: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 192, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 192, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_13 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0193: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 193, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 193, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_14 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+0194: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 194, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 194, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 194, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 194, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 194, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+0195: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_6) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 195, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 195, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+0196: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 196, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_18 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_18 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_tic = __pyx_t_18;
0197:
+0198: if pdelNxy == []:
__pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_19) { /* … */ goto __pyx_L3; }
+0199: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 199, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 199, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 199, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 199, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 199, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_20 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_20(__pyx_t_1); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_20(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_1), 2) < 0) __PYX_ERR(0, 199, __pyx_L1_error)
__pyx_t_20 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_20 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 199, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 199, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 199, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 199, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 199, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
0200: else:
+0201: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_21 = NULL;
__pyx_t_22 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_21 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_21)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_21);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_22 = 1;
}
}
__pyx_t_23 = PyTuple_New(7+__pyx_t_22); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_21) {
__Pyx_GIVEREF(__pyx_t_21); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_21); __pyx_t_21 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_22, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_22, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_22, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 3+__pyx_t_22, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_23, 4+__pyx_t_22, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_23, 5+__pyx_t_22, __pyx_t_6);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_23, 6+__pyx_t_22, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_23, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 201, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_23 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_23);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_23 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 201, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_20 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_20(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_23 = __pyx_t_20(__pyx_t_6); if (unlikely(!__pyx_t_23)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_6), 2) < 0) __PYX_ERR(0, 201, __pyx_L1_error)
__pyx_t_20 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_20 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 201, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 201, __pyx_L1_error)
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 201, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 201, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 201, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
}
__pyx_L3:;
0202:
+0203: if labelsorted == 1:
__pyx_t_19 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_19) {
/* … */
}
+0204: X, Y = labelsort(n, X, Y)
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; __pyx_t_22 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_22 = 1; } } __pyx_t_1 = PyTuple_New(3+__pyx_t_22); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_22, __pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_22, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_22, ((PyObject *)__pyx_v_Y)); __pyx_t_4 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 204, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_20 = Py_TYPE(__pyx_t_4)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_20(__pyx_t_4); if (unlikely(!__pyx_t_23)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_1 = __pyx_t_20(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_4), 2) < 0) __PYX_ERR(0, 204, __pyx_L1_error) __pyx_t_20 = NULL; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 204, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 204, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 204, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 204, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 204, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+0205: r = 0
__pyx_v_r = 0;
+0206: Iter = 1
__pyx_v_Iter = 1;
+0207: while True:
while (1) {
+0208: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_24 = 0; __pyx_t_24 < __pyx_t_2; __pyx_t_24+=1) {
__pyx_v_k = __pyx_t_24;
+0209: I[X[k], Y[k]] = k + 1
__pyx_t_25 = __pyx_v_k;
__pyx_t_26 = __pyx_v_k;
__pyx_t_27 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_25, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_28 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_26, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+0210: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = 0;
__pyx_t_31 = __pyx_v_k;
__pyx_t_32 = __pyx_v_k;
__pyx_t_33 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_34 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_35 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_col.diminfo[1].strides));
+0211: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_36 = __pyx_v_k;
__pyx_t_37 = 1;
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = __pyx_v_k;
__pyx_t_40 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_41 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_42 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_37, __pyx_pybuffernd_col.diminfo[1].strides));
+0212: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = 2;
__pyx_t_45 = __pyx_v_k;
__pyx_t_46 = __pyx_v_k;
__pyx_t_47 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_48 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_49 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
}
0213:
+0214: showriteframe(sa, sf, fd, r, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_r, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0215: r = 1
__pyx_v_r = 1;
0216:
+0217: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_1) {
__pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
} else {
__pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_4, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_7, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 217, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 217, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_19) break;
+0218: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_24 = 0; __pyx_t_24 < __pyx_t_2; __pyx_t_24+=1) {
__pyx_v_k = __pyx_t_24;
+0219: if a[k] == 1:
__pyx_t_50 = __pyx_v_k;
__pyx_t_19 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_19) {
/* … */
}
}
+0220: a[k] = 0
__pyx_t_51 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+0221: xo = X[k]
__pyx_t_52 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_X.diminfo[0].strides));
+0222: yo = Y[k]
__pyx_t_53 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Y.diminfo[0].strides));
+0223: Io = I[xo, yo]
__pyx_t_54 = __pyx_v_xo;
__pyx_t_55 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides));
+0224: red = col[k, 0]
__pyx_t_56 = __pyx_v_k;
__pyx_t_57 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_57, __pyx_pybuffernd_col.diminfo[1].strides));
+0225: green = col[k, 1]
__pyx_t_58 = __pyx_v_k;
__pyx_t_59 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_59, __pyx_pybuffernd_col.diminfo[1].strides));
+0226: blue = col[k, 2]
__pyx_t_60 = __pyx_v_k;
__pyx_t_61 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_61, __pyx_pybuffernd_col.diminfo[1].strides));
0227:
+0228: for deli in range(r + 1):
__pyx_t_62 = (__pyx_v_r + 1);
for (__pyx_t_63 = 0; __pyx_t_63 < __pyx_t_62; __pyx_t_63+=1) {
__pyx_v_deli = __pyx_t_63;
+0229: for delj in range(r + 1):
__pyx_t_64 = (__pyx_v_r + 1);
for (__pyx_t_65 = 0; __pyx_t_65 < __pyx_t_64; __pyx_t_65+=1) {
__pyx_v_delj = __pyx_t_65;
+0230: if deli * deli + delj * delj <= r * r:
__pyx_t_19 = ((((__pyx_v_deli * __pyx_v_deli) + (__pyx_v_delj * __pyx_v_delj)) <= (__pyx_v_r * __pyx_v_r)) != 0);
if (__pyx_t_19) {
/* … */
}
}
}
+0231: i, j = xo + deli, yo + delj
__pyx_t_66 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_67 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_66;
__pyx_v_j = __pyx_t_67;
+0232: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_68 = (0 <= __pyx_v_i);
if (__pyx_t_68) {
__pyx_t_68 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_69 = (__pyx_t_68 != 0);
if (__pyx_t_69) {
} else {
__pyx_t_19 = __pyx_t_69;
goto __pyx_L26_bool_binop_done;
}
__pyx_t_69 = (0 <= __pyx_v_j);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_68 = (__pyx_t_69 != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L26_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0233: if I[i, j] == 0:
__pyx_t_67 = __pyx_v_i;
__pyx_t_66 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+0234: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L29;
}
+0235: PN = I[i - 1, j]
__pyx_t_70 = (__pyx_v_i - 1);
__pyx_t_71 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_I.diminfo[1].strides));
0236: else:
+0237: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L29:;
+0238: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L30;
}
+0239: PW = I[i, j - 1]
__pyx_t_72 = __pyx_v_i;
__pyx_t_73 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_I.diminfo[1].strides));
0240: else:
+0241: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L30:;
+0242: if PN == Io or PW == Io:
__pyx_t_68 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_68) {
} else {
__pyx_t_19 = __pyx_t_68;
goto __pyx_L32_bool_binop_done;
}
__pyx_t_68 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L32_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0243: I[i, j] = Io
__pyx_t_74 = __pyx_v_i;
__pyx_t_75 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0244: Col[i, j, 2] = red
__pyx_t_76 = __pyx_v_i;
__pyx_t_77 = __pyx_v_j;
__pyx_t_78 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0245: Col[i, j, 1] = green
__pyx_t_79 = __pyx_v_i;
__pyx_t_80 = __pyx_v_j;
__pyx_t_81 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_81, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0246: Col[i, j, 0] = blue
__pyx_t_82 = __pyx_v_i;
__pyx_t_83 = __pyx_v_j;
__pyx_t_84 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_83, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_84, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0247: a[k] = 1
__pyx_t_85 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0248:
+0249: i, j = xo - deli, yo + delj
__pyx_t_86 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_87 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_86;
__pyx_v_j = __pyx_t_87;
+0250: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_68 = (0 <= __pyx_v_i);
if (__pyx_t_68) {
__pyx_t_68 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_69 = (__pyx_t_68 != 0);
if (__pyx_t_69) {
} else {
__pyx_t_19 = __pyx_t_69;
goto __pyx_L35_bool_binop_done;
}
__pyx_t_69 = (0 <= __pyx_v_j);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_68 = (__pyx_t_69 != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L35_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0251: if I[i, j] == 0:
__pyx_t_87 = __pyx_v_i;
__pyx_t_86 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+0252: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L38;
}
+0253: PS = I[i + 1, j]
__pyx_t_88 = (__pyx_v_i + 1);
__pyx_t_89 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_I.diminfo[1].strides));
0254: else:
+0255: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L38:;
+0256: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L39;
}
+0257: PW = I[i, j - 1]
__pyx_t_90 = __pyx_v_i;
__pyx_t_91 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_91, __pyx_pybuffernd_I.diminfo[1].strides));
0258: else:
+0259: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L39:;
+0260: if PW == Io or PS == Io:
__pyx_t_68 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_68) {
} else {
__pyx_t_19 = __pyx_t_68;
goto __pyx_L41_bool_binop_done;
}
__pyx_t_68 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L41_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0261: I[i, j] = Io
__pyx_t_92 = __pyx_v_i;
__pyx_t_93 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0262: Col[i, j, 2] = red
__pyx_t_94 = __pyx_v_i;
__pyx_t_95 = __pyx_v_j;
__pyx_t_96 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0263: Col[i, j, 1] = green
__pyx_t_97 = __pyx_v_i;
__pyx_t_98 = __pyx_v_j;
__pyx_t_99 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0264: Col[i, j, 0] = blue
__pyx_t_100 = __pyx_v_i;
__pyx_t_101 = __pyx_v_j;
__pyx_t_102 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_102, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0265: a[k] = 1
__pyx_t_103 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0266:
+0267: i, j = xo - deli, yo - delj
__pyx_t_104 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_105 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_104;
__pyx_v_j = __pyx_t_105;
+0268: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_68 = (0 <= __pyx_v_i);
if (__pyx_t_68) {
__pyx_t_68 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_69 = (__pyx_t_68 != 0);
if (__pyx_t_69) {
} else {
__pyx_t_19 = __pyx_t_69;
goto __pyx_L44_bool_binop_done;
}
__pyx_t_69 = (0 <= __pyx_v_j);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_68 = (__pyx_t_69 != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L44_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0269: if I[i, j] == 0:
__pyx_t_105 = __pyx_v_i;
__pyx_t_104 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+0270: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L47;
}
+0271: PS = I[i + 1, j]
__pyx_t_106 = (__pyx_v_i + 1);
__pyx_t_107 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_I.diminfo[1].strides));
0272: else:
+0273: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L47:;
+0274: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L48;
}
+0275: PE = I[i, j + 1]
__pyx_t_108 = __pyx_v_i;
__pyx_t_109 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_I.diminfo[1].strides));
0276: else:
+0277: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L48:;
+0278: if PE == Io or PS == Io:
__pyx_t_68 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_68) {
} else {
__pyx_t_19 = __pyx_t_68;
goto __pyx_L50_bool_binop_done;
}
__pyx_t_68 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L50_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0279: I[i, j] = Io
__pyx_t_110 = __pyx_v_i;
__pyx_t_111 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0280: Col[i, j, 2] = red
__pyx_t_112 = __pyx_v_i;
__pyx_t_113 = __pyx_v_j;
__pyx_t_114 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0281: Col[i, j, 1] = green
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_117 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0282: Col[i, j, 0] = blue
__pyx_t_118 = __pyx_v_i;
__pyx_t_119 = __pyx_v_j;
__pyx_t_120 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0283: a[k] = 1
__pyx_t_121 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0284:
+0285: i, j = xo + deli, yo - delj
__pyx_t_122 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_123 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_122;
__pyx_v_j = __pyx_t_123;
+0286: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_68 = (0 <= __pyx_v_i);
if (__pyx_t_68) {
__pyx_t_68 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_69 = (__pyx_t_68 != 0);
if (__pyx_t_69) {
} else {
__pyx_t_19 = __pyx_t_69;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_69 = (0 <= __pyx_v_j);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_68 = (__pyx_t_69 != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L53_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0287: if I[i, j] == 0:
__pyx_t_123 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+0288: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L56;
}
+0289: PN = I[i - 1, j]
__pyx_t_124 = (__pyx_v_i - 1);
__pyx_t_125 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides));
0290: else:
+0291: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L56:;
+0292: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L57;
}
+0293: PE = I[i, j + 1]
__pyx_t_126 = __pyx_v_i;
__pyx_t_127 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_I.diminfo[1].strides));
0294: else:
+0295: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L57:;
+0296: if PN == Io or PE == Io:
__pyx_t_68 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_68) {
} else {
__pyx_t_19 = __pyx_t_68;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_68 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_68;
__pyx_L59_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+0297: I[i, j] = Io
__pyx_t_128 = __pyx_v_i;
__pyx_t_129 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_128, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_129, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0298: Col[i, j, 2] = red
__pyx_t_130 = __pyx_v_i;
__pyx_t_131 = __pyx_v_j;
__pyx_t_132 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0299: Col[i, j, 1] = green
__pyx_t_133 = __pyx_v_i;
__pyx_t_134 = __pyx_v_j;
__pyx_t_135 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0300: Col[i, j, 0] = blue
__pyx_t_136 = __pyx_v_i;
__pyx_t_137 = __pyx_v_j;
__pyx_t_138 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0301: a[k] = 1
__pyx_t_139 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0302:
+0303: showriteframe(sa, sf, fd, r, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_r, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0304: r = r + 1
__pyx_v_r = (__pyx_v_r + 1);
}
0305:
+0306: if asy == 0:
__pyx_t_19 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+0307: break
goto __pyx_L12_break;
0308: else:
+0309: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 309, __pyx_L1_error)
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 309, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
}
}
if (__pyx_t_7) {
__pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 309, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 309, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = __Pyx_PyInt_EqObjC(__pyx_t_23, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 309, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 309, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_19) {
/* … */
}
+0310: break
goto __pyx_L12_break;
0311: else:
+0312: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 312, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+0313: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); __pyx_t_4 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 313, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 313, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+0314: a = np.ones(p, dtype=np.int8)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ones); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_int8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 314, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 314, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+0315: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_5 = NULL; __pyx_t_22 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_22 = 1; } } __pyx_t_21 = PyTuple_New(4+__pyx_t_22); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_22, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_22, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_22, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_21, 3+__pyx_t_22, __pyx_t_23); __pyx_t_6 = 0; __pyx_t_1 = 0; __pyx_t_23 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 315, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_21 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_21 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_21); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_21 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_23 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 315, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = Py_TYPE(__pyx_t_23)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_20(__pyx_t_23); if (unlikely(!__pyx_t_7)) goto __pyx_L63_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_21 = __pyx_t_20(__pyx_t_23); if (unlikely(!__pyx_t_21)) goto __pyx_L63_unpacking_failed; __Pyx_GOTREF(__pyx_t_21); if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_23), 2) < 0) __PYX_ERR(0, 315, __pyx_L1_error) __pyx_t_20 = NULL; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; goto __pyx_L64_unpacking_done; __pyx_L63_unpacking_failed:; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_20 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 315, __pyx_L1_error) __pyx_L64_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 315, __pyx_L1_error) if (!(likely(((__pyx_t_21) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_21, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 315, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 315, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_21); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 315, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_21)); __pyx_t_21 = 0;
+0316: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
0317:
+0318: toc = time.time()
__pyx_t_21 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_21, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; __pyx_t_21 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_21 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_21)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_21); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_21) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_21); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 318, __pyx_L1_error) __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 318, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_18 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_18 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 318, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_toc = __pyx_t_18;
+0319: obj.exetime = toc - tic
__pyx_t_4 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_4) < 0) __PYX_ERR(0, 319, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+0320: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 320, __pyx_L1_error)
+0321: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 321, __pyx_L1_error)
+0322: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 322, __pyx_L1_error)
+0323: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 323, __pyx_L1_error)
+0324: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
0325:
+0326: def Evolve_2D_Isotropic_SiteSaturated_with_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_7Evolve_2D_Isotropic_SiteSaturated_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_7Evolve_2D_Isotropic_SiteSaturated_with_gr2D = {"Evolve_2D_Isotropic_SiteSaturated_with_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_7Evolve_2D_Isotropic_SiteSaturated_with_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_7Evolve_2D_Isotropic_SiteSaturated_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_SiteSaturated_with_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_6Evolve_2D_Isotropic_SiteSaturated_with_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_6Evolve_2D_Isotropic_SiteSaturated_with_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_gr2D = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
long __pyx_v_i;
long __pyx_v_j;
long __pyx_v_deli;
long __pyx_v_delj;
long __pyx_v_xo;
long __pyx_v_yo;
long __pyx_v_PN;
long __pyx_v_PE;
long __pyx_v_PW;
long __pyx_v_PS;
long __pyx_v_k;
long __pyx_v_Io;
long __pyx_v_countim;
long __pyx_v_win;
long __pyx_v_xmin;
long __pyx_v_xmax;
long __pyx_v_ymin;
long __pyx_v_ymax;
long __pyx_v_rmax;
long __pyx_v_Iter;
float __pyx_v_rad;
float __pyx_v_dr;
float __pyx_v_tmp;
float __pyx_v_gr2DValmax;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_gr2DVal = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_gr2DVal;
__Pyx_Buffer __pyx_pybuffer_gr2DVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_SiteSaturated_with_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_gr2DVal.pybuffer.buf = NULL;
__pyx_pybuffer_gr2DVal.refcount = 0;
__pyx_pybuffernd_gr2DVal.data = NULL;
__pyx_pybuffernd_gr2DVal.rcbuffer = &__pyx_pybuffer_gr2DVal;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_25);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Isotropic_SiteSaturated_with_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_gr2D);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_gr2DVal);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__17 = PyTuple_Pack(51, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_gr2D, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_Io, __pyx_n_s_countim, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_rmax, __pyx_n_s_Iter, __pyx_n_s_rad, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_gr2DValmax, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_gr2DVal, __pyx_n_s_r, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__17);
__Pyx_GIVEREF(__pyx_tuple__17);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_7Evolve_2D_Isotropic_SiteSaturated_with_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Isotropic_SiteSaturate_2, __pyx_t_2) < 0) __PYX_ERR(0, 326, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__18 = (PyObject*)__Pyx_PyCode_New(1, 0, 51, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__17, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Isotropic_SiteSaturate_2, 326, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__18)) __PYX_ERR(0, 326, __pyx_L1_error)
0327: # Grabbing data from the input object
+0328: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 328, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+0329: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 329, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 329, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+0330: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 330, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+0331: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 331, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+0332: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 332, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 332, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+0333: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 333, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 333, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+0334: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 334, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 334, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+0335: cdef long long asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 335, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 335, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_2;
+0336: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 336, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 336, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+0337: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 337, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+0338: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 338, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+0339: gr2D = obj.gr2D
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_gr2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 339, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_gr2D = __pyx_t_1; __pyx_t_1 = 0;
0340:
0341: # Declaring other variables
0342: cdef double tic, toc
0343: cdef long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, Io, countim, win, xmin, xmax, ymin, ymax, rmax, Iter
0344: cdef float rad, dr, tmp, gr2DValmax, red, green, blue
+0345: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 345, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 345, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0346: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 346, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 346, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0347: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 347, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 347, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 347, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0348: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 348, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 348, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 348, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+0349: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 349, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 349, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+0350: cdef np.ndarray[np.float64_t, ndim = 1] gr2DVal = np.zeros(p, dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 350, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_gr2DVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 350, __pyx_L1_error) } else {__pyx_pybuffernd_gr2DVal.diminfo[0].strides = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_gr2DVal.diminfo[0].shape = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_gr2DVal = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0351: cdef np.ndarray[np.float64_t, ndim = 1] r = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 351, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 351, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 351, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0352: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 352, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 352, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 352, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_15 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+0353: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 353, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 353, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 353, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_16 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0354: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 354, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 354, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_4) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 354, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 354, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 354, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
0355:
+0356: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 356, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 356, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+0357: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 357, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 357, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 357, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_tic = __pyx_t_20;
0358:
+0359: if pdelNxy == []:
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 359, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 359, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 359, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_21) { /* … */ goto __pyx_L3; }
+0360: [X, Y] = randindex2D(m, n, p)
__pyx_t_4 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 360, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 360, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_7)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_6), 2) < 0) __PYX_ERR(0, 360, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 360, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 360, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 360, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 360, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 360, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
0361: else:
+0362: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_23 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_23 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_23)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_24 = 1;
}
}
__pyx_t_25 = PyTuple_New(7+__pyx_t_24); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_23) {
__Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_23); __pyx_t_23 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_24, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_24, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_24, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 5+__pyx_t_24, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 6+__pyx_t_24, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 362, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_25 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_25 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_25);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 362, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_25 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_25)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_25);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_1), 2) < 0) __PYX_ERR(0, 362, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 362, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 362, __pyx_L1_error)
if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 362, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 362, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_25);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 362, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_25));
__pyx_t_25 = 0;
}
__pyx_L3:;
0363:
+0364: if labelsorted == 1:
__pyx_t_21 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_21) {
/* … */
}
+0365: X, Y = labelsort(n, X, Y)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_24 = 1; } } __pyx_t_6 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_24, __pyx_t_7); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_24, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_24, ((PyObject *)__pyx_v_Y)); __pyx_t_7 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 365, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_25 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_25 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_25 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_25 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_25)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_25); index = 1; __pyx_t_6 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_7), 2) < 0) __PYX_ERR(0, 365, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 365, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 365, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 365, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 365, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 365, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
0366:
0367:
0368:
+0369: Iter = 1
__pyx_v_Iter = 1;
+0370: while True:
while (1) {
+0371: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+0372: I[X[k], Y[k]] = k + 1
__pyx_t_27 = __pyx_v_k;
__pyx_t_28 = __pyx_v_k;
__pyx_t_29 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_30 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+0373: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_31 = __pyx_v_k;
__pyx_t_32 = 0;
__pyx_t_33 = __pyx_v_k;
__pyx_t_34 = __pyx_v_k;
__pyx_t_35 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_36 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_37 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_32, __pyx_pybuffernd_col.diminfo[1].strides));
+0374: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = 1;
__pyx_t_40 = __pyx_v_k;
__pyx_t_41 = __pyx_v_k;
__pyx_t_42 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_43 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_44 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_39, __pyx_pybuffernd_col.diminfo[1].strides));
+0375: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_45 = __pyx_v_k;
__pyx_t_46 = 2;
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = __pyx_v_k;
__pyx_t_49 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_50 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_51 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_46, __pyx_pybuffernd_col.diminfo[1].strides));
+0376: gr2DVal[k] = gr2D(X[k], Y[k], k + 1)
__pyx_t_52 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_53 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_7 = __Pyx_PyInt_From_long((__pyx_v_k + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_gr2D);
__pyx_t_1 = __pyx_v_gr2D; __pyx_t_5 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_24 = 1;
}
}
__pyx_t_23 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_24, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_24, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_24, __pyx_t_7);
__pyx_t_6 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_23, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_54 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_54 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 376, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_55 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_54;
}
0377:
+0378: gr2DValmax = max(gr2DVal)
__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 378, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_gr2DVal)); __Pyx_GIVEREF(((PyObject *)__pyx_v_gr2DVal)); PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_v_gr2DVal)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_max, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 378, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_56 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_56 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 378, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_gr2DValmax = __pyx_t_56;
+0379: countim = 0
__pyx_v_countim = 0;
+0380: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0381: countim = 1
__pyx_v_countim = 1;
+0382: rmax = 0
__pyx_v_rmax = 0;
0383:
+0384: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0385: r = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = PyTuple_New(1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_25) < 0) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_23, __pyx_t_1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 385, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_v_r, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 385, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_r, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0;
0386:
+0387: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_1) {
__pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
} else {
__pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_4, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_4, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_25, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 387, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_21) break;
0388:
+0389: gr2DValmax = 0
__pyx_v_gr2DValmax = 0.0;
+0390: for i in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_i = __pyx_t_26;
+0391: if a[i] == 1:
__pyx_t_57 = __pyx_v_i;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+0392: tmp = gr2DVal[i]
__pyx_t_58 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_gr2DVal.diminfo[0].strides));
+0393: if tmp > gr2DValmax:
__pyx_t_21 = ((__pyx_v_tmp > __pyx_v_gr2DValmax) != 0);
if (__pyx_t_21) {
/* … */
}
+0394: gr2DValmax = tmp
__pyx_v_gr2DValmax = __pyx_v_tmp;
0395:
0396:
+0397: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+0398: if a[k] == 1:
__pyx_t_59 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+0399: xo = X[k]
__pyx_t_60 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_X.diminfo[0].strides));
+0400: yo = Y[k]
__pyx_t_61 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_Y.diminfo[0].strides));
+0401: Io = I[xo, yo]
__pyx_t_62 = __pyx_v_xo;
__pyx_t_63 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_I.diminfo[1].strides));
+0402: dr = gr2DVal[k] / gr2DValmax
__pyx_t_64 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_gr2DVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_gr2DValmax));
+0403: r[k] = r[k] + dr
__pyx_t_65 = __pyx_v_k;
__pyx_t_66 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_r.diminfo[0].strides)) + __pyx_v_dr);
+0404: rad = r[k]
__pyx_t_67 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_r.diminfo[0].strides));
+0405: a[k] = 0
__pyx_t_68 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+0406: rmax = math.ceil(rad)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_ceil); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyFloat_FromDouble(__pyx_v_rad); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (!__pyx_t_1) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 406, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_69 = __Pyx_PyInt_As_long(__pyx_t_23); if (unlikely((__pyx_t_69 == (long)-1) && PyErr_Occurred())) __PYX_ERR(0, 406, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_rmax = __pyx_t_69;
+0407: red = col[k, 0]
__pyx_t_70 = __pyx_v_k;
__pyx_t_71 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_col.diminfo[1].strides));
+0408: green = col[k, 1]
__pyx_t_72 = __pyx_v_k;
__pyx_t_73 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_col.diminfo[1].strides));
+0409: blue = col[k, 2]
__pyx_t_74 = __pyx_v_k;
__pyx_t_75 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_col.diminfo[1].strides));
0410:
0411: # OUTWARD
+0412: for deli in range(rmax + 1):
__pyx_t_69 = (__pyx_v_rmax + 1);
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_69; __pyx_t_76+=1) {
__pyx_v_deli = __pyx_t_76;
+0413: for delj in range(rmax + 1):
__pyx_t_77 = (__pyx_v_rmax + 1);
for (__pyx_t_78 = 0; __pyx_t_78 < __pyx_t_77; __pyx_t_78+=1) {
__pyx_v_delj = __pyx_t_78;
0414:
+0415: if deli ** 2 + delj ** 2 <= (rad + 0.5) ** 2:
__pyx_t_21 = (((__Pyx_pow_long(__pyx_v_deli, 2) + __Pyx_pow_long(__pyx_v_delj, 2)) <= pow((__pyx_v_rad + 0.5), 2.0)) != 0);
if (__pyx_t_21) {
/* … */
}
}
}
0416:
+0417: i, j = xo + deli, yo + delj
__pyx_t_79 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_80 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_79;
__pyx_v_j = __pyx_t_80;
+0418: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L30_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L30_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0419: if I[i, j] == 0:
__pyx_t_83 = __pyx_v_i;
__pyx_t_84 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+0420: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L33;
}
+0421: PN = I[i - 1, j]
__pyx_t_85 = (__pyx_v_i - 1);
__pyx_t_86 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
0422: else:
+0423: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L33:;
+0424: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L34;
}
+0425: PE = I[i, j + 1]
__pyx_t_87 = __pyx_v_i;
__pyx_t_88 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_88, __pyx_pybuffernd_I.diminfo[1].strides));
0426: else:
+0427: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L34:;
+0428: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L35;
}
+0429: PW = I[i, j - 1]
__pyx_t_89 = __pyx_v_i;
__pyx_t_90 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_I.diminfo[1].strides));
0430: else:
+0431: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L35:;
+0432: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L36;
}
+0433: PS = I[i + 1, j]
__pyx_t_91 = (__pyx_v_i + 1);
__pyx_t_92 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_I.diminfo[1].strides));
0434: else:
+0435: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L36:;
+0436: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L38_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0437: I[i, j] = Io
__pyx_t_93 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0438: Col[i, j, 2] = red
__pyx_t_95 = __pyx_v_i;
__pyx_t_96 = __pyx_v_j;
__pyx_t_97 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0439: Col[i, j, 1] = green
__pyx_t_98 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_100 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0440: Col[i, j, 0] = blue
__pyx_t_101 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_103 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0441: a[k] = 1
__pyx_t_104 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0442:
0443:
0444:
0445:
0446:
+0447: i, j = xo - deli, yo + delj
__pyx_t_80 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_79 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_80;
__pyx_v_j = __pyx_t_79;
+0448: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L43_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L43_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0449: if I[i, j] == 0:
__pyx_t_105 = __pyx_v_i;
__pyx_t_106 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+0450: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L46;
}
+0451: PN = I[i - 1, j]
__pyx_t_107 = (__pyx_v_i - 1);
__pyx_t_108 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides));
0452: else:
+0453: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L46:;
+0454: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L47;
}
+0455: PE = I[i, j + 1]
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_I.diminfo[1].strides));
0456: else:
+0457: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L47:;
+0458: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L48;
}
+0459: PW = I[i, j - 1]
__pyx_t_111 = __pyx_v_i;
__pyx_t_112 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_I.diminfo[1].strides));
0460: else:
+0461: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L48:;
+0462: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L49;
}
+0463: PS = I[i + 1, j]
__pyx_t_113 = (__pyx_v_i + 1);
__pyx_t_114 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides));
0464: else:
+0465: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L49:;
+0466: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L51_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0467: I[i, j] = Io
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0468: Col[i, j, 2] = red
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = __pyx_v_j;
__pyx_t_119 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0469: Col[i, j, 1] = green
__pyx_t_120 = __pyx_v_i;
__pyx_t_121 = __pyx_v_j;
__pyx_t_122 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0470: Col[i, j, 0] = blue
__pyx_t_123 = __pyx_v_i;
__pyx_t_124 = __pyx_v_j;
__pyx_t_125 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0471: a[k] = 1
__pyx_t_126 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0472:
0473:
0474:
0475:
0476:
+0477: i, j = xo - deli, yo - delj
__pyx_t_79 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_80 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_79;
__pyx_v_j = __pyx_t_80;
+0478: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L56_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L56_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0479: if I[i, j] == 0:
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+0480: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L59;
}
+0481: PN = I[i - 1, j]
__pyx_t_129 = (__pyx_v_i - 1);
__pyx_t_130 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides));
0482: else:
+0483: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L59:;
+0484: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L60;
}
+0485: PE = I[i, j + 1]
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides));
0486: else:
+0487: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L60:;
+0488: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L61;
}
+0489: PW = I[i, j - 1]
__pyx_t_133 = __pyx_v_i;
__pyx_t_134 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
0490: else:
+0491: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L61:;
+0492: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L62;
}
+0493: PS = I[i + 1, j]
__pyx_t_135 = (__pyx_v_i + 1);
__pyx_t_136 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides));
0494: else:
+0495: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L62:;
+0496: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L64_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0497: I[i, j] = Io
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0498: Col[i, j, 2] = red
__pyx_t_139 = __pyx_v_i;
__pyx_t_140 = __pyx_v_j;
__pyx_t_141 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0499: Col[i, j, 1] = green
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = __pyx_v_j;
__pyx_t_144 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0500: Col[i, j, 0] = blue
__pyx_t_145 = __pyx_v_i;
__pyx_t_146 = __pyx_v_j;
__pyx_t_147 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0501: a[k] = 1
__pyx_t_148 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0502:
0503:
0504:
0505:
+0506: i, j = xo + deli, yo - delj
__pyx_t_80 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_79 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_80;
__pyx_v_j = __pyx_t_79;
+0507: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L69_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L69_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0508: if I[i, j] == 0:
__pyx_t_149 = __pyx_v_i;
__pyx_t_150 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+0509: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L72;
}
+0510: PN = I[i - 1, j]
__pyx_t_151 = (__pyx_v_i - 1);
__pyx_t_152 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
0511: else:
+0512: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L72:;
+0513: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L73;
}
+0514: PE = I[i, j + 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
0515: else:
+0516: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L73:;
+0517: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L74;
}
+0518: PW = I[i, j - 1]
__pyx_t_155 = __pyx_v_i;
__pyx_t_156 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides));
0519: else:
+0520: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L74:;
+0521: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L75;
}
+0522: PS = I[i + 1, j]
__pyx_t_157 = (__pyx_v_i + 1);
__pyx_t_158 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_I.diminfo[1].strides));
0523: else:
+0524: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L75:;
+0525: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L77_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+0526: I[i, j] = Io
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0527: Col[i, j, 2] = red
__pyx_t_161 = __pyx_v_i;
__pyx_t_162 = __pyx_v_j;
__pyx_t_163 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0528: Col[i, j, 1] = green
__pyx_t_164 = __pyx_v_i;
__pyx_t_165 = __pyx_v_j;
__pyx_t_166 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0529: Col[i, j, 0] = blue
__pyx_t_167 = __pyx_v_i;
__pyx_t_168 = __pyx_v_j;
__pyx_t_169 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0530: a[k] = 1
__pyx_t_170 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0531:
0532:
+0533: if a[k] == 0:
__pyx_t_171 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+0534: win = rmax
__pyx_v_win = __pyx_v_rmax;
+0535: xmin = max(0, xo - win)
__pyx_t_69 = (__pyx_v_xo - __pyx_v_win);
__pyx_t_76 = 0;
if (((__pyx_t_69 > __pyx_t_76) != 0)) {
__pyx_t_77 = __pyx_t_69;
} else {
__pyx_t_77 = __pyx_t_76;
}
__pyx_v_xmin = __pyx_t_77;
+0536: xmax = min(m - 1, xo + win)
__pyx_t_77 = (__pyx_v_xo + __pyx_v_win);
__pyx_t_172 = (__pyx_v_m - 1);
if (((__pyx_t_77 < __pyx_t_172) != 0)) {
__pyx_t_173 = __pyx_t_77;
} else {
__pyx_t_173 = __pyx_t_172;
}
__pyx_v_xmax = __pyx_t_173;
+0537: ymin = max(0, yo - win)
__pyx_t_77 = (__pyx_v_yo - __pyx_v_win);
__pyx_t_69 = 0;
if (((__pyx_t_77 > __pyx_t_69) != 0)) {
__pyx_t_76 = __pyx_t_77;
} else {
__pyx_t_76 = __pyx_t_69;
}
__pyx_v_ymin = __pyx_t_76;
+0538: ymax = min(n - 1, yo + win)
__pyx_t_76 = (__pyx_v_yo + __pyx_v_win);
__pyx_t_173 = (__pyx_v_n - 1);
if (((__pyx_t_76 < __pyx_t_173) != 0)) {
__pyx_t_172 = __pyx_t_76;
} else {
__pyx_t_172 = __pyx_t_173;
}
__pyx_v_ymax = __pyx_t_172;
+0539: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_174 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
0540:
0541:
0542:
+0543: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0544: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
}
+0545: if asy == 0:
__pyx_t_21 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+0546: break
goto __pyx_L12_break;
0547: else:
+0548: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 548, __pyx_L1_error)
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_all); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 548, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
}
}
if (__pyx_t_4) {
__pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 548, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
__pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 548, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = __Pyx_PyInt_EqObjC(__pyx_t_23, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 548, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 548, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_21) {
/* … */
}
+0549: break
goto __pyx_L12_break;
0550: else:
+0551: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 551, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+0552: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_25 = PyTuple_New(2); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_25, 1, __pyx_t_4); __pyx_t_7 = 0; __pyx_t_4 = 0; __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyDict_New(); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_25, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_4, __pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 552, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 552, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 552, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+0553: a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 553, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 553, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 553, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+0554: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_centroids); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_23 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_6 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); __pyx_t_24 = 1; } } __pyx_t_5 = PyTuple_New(4+__pyx_t_24); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_24, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_24, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_24, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_24, __pyx_t_23); __pyx_t_1 = 0; __pyx_t_25 = 0; __pyx_t_23 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 554, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_4 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_23 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_23)->tp_iternext; index = 0; __pyx_t_4 = __pyx_t_22(__pyx_t_23); if (unlikely(!__pyx_t_4)) goto __pyx_L84_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_23); if (unlikely(!__pyx_t_5)) goto __pyx_L84_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_23), 2) < 0) __PYX_ERR(0, 554, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; goto __pyx_L85_unpacking_done; __pyx_L84_unpacking_failed:; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 554, __pyx_L1_error) __pyx_L85_unpacking_done:; } if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 554, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 554, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 554, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 554, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+0555: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
0556:
+0557: toc = time.time()
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 557, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 557, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 557, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 557, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 557, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_toc = __pyx_t_20;
+0558: obj.exetime = toc - tic
__pyx_t_7 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 558, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_7) < 0) __PYX_ERR(0, 558, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+0559: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 559, __pyx_L1_error)
+0560: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 560, __pyx_L1_error)
+0561: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 561, __pyx_L1_error)
+0562: obj.gr2DVal = gr2DVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_gr2DVal, ((PyObject *)__pyx_v_gr2DVal)) < 0) __PYX_ERR(0, 562, __pyx_L1_error)
+0563: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 563, __pyx_L1_error)
+0564: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
0565:
0566:
+0567: def Evolve_2D_Isotropic_Continuous_without_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_9Evolve_2D_Isotropic_Continuous_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_9Evolve_2D_Isotropic_Continuous_without_gr2D = {"Evolve_2D_Isotropic_Continuous_without_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_9Evolve_2D_Isotropic_Continuous_without_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_9Evolve_2D_Isotropic_Continuous_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_Continuous_without_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_8Evolve_2D_Isotropic_Continuous_without_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_8Evolve_2D_Isotropic_Continuous_without_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_NdotIsoXY = NULL;
PyObject *__pyx_v_GtIsoXY = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_rad;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_Continuous_without_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_48);
__Pyx_XDECREF(__pyx_t_167);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Isotropic_Continuous_without_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_NdotIsoXY);
__Pyx_XDECREF(__pyx_v_GtIsoXY);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__19 = PyTuple_Pack(54, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_NdotIsoXY, __pyx_n_s_GtIsoXY, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_r, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 567, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__19);
__Pyx_GIVEREF(__pyx_tuple__19);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_9Evolve_2D_Isotropic_Continuous_without_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 567, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Isotropic_Continuous_w, __pyx_t_2) < 0) __PYX_ERR(0, 567, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__20 = (PyObject*)__Pyx_PyCode_New(1, 0, 54, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__19, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Isotropic_Continuous_w, 567, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__20)) __PYX_ERR(0, 567, __pyx_L1_error)
0568: # Grabbing data from the input object
+0569: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 569, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+0570: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 570, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 570, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+0571: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 571, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 571, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+0572: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 572, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 572, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+0573: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 573, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+0574: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+0575: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 575, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+0576: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 576, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+0577: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+0578: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+0579: NdotIsoXY = obj.NdotIsoXY
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_NdotIsoXY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_NdotIsoXY = __pyx_t_1; __pyx_t_1 = 0;
+0580: GtIsoXY = obj.GtIsoXY
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_GtIsoXY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_GtIsoXY = __pyx_t_1; __pyx_t_1 = 0;
+0581: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
0582:
0583: # Declaring other variables
0584: cdef double tic, toc
0585: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, Iter
0586: cdef float dt, f, t, dr, tmp, red, green, blue
+0587: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 587, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 587, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 587, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+0588: cdef np.ndarray[np.int8_t, ndim = 1] a = np.zeros(MN, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 588, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 588, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 588, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0589: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 589, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 589, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 589, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+0590: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 590, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 590, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 590, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0591: cdef np.ndarray[np.int64_t, ndim = 1] r = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 591, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 591, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 591, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+0592: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 592, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 592, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 592, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0593: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 593, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 593, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 593, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+0594: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 594, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 594, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 594, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_16 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0595: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 595, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 595, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 595, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_17 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+0596: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 596, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 596, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 596, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 596, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 596, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+0597: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 597, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 597, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+0598: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 598, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 598, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 598, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 598, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 598, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_tic = __pyx_t_21;
0599:
0600:
+0601: t = 0
__pyx_v_t = 0.0;
+0602: p = 0
__pyx_v_p = 0;
+0603: dp = 0
__pyx_v_dp = 0;
+0604: countim = 0
__pyx_v_countim = 0;
+0605: nnz = 0
__pyx_v_nnz = 0;
0606:
+0607: Iter = 1
__pyx_v_Iter = 1;
+0608: while nnz < MN:
while (1) {
__pyx_t_22 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_22) break;
+0609: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+0610: dt = 1.0 / GtIsoXY(t)
__pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 610, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_GtIsoXY); __pyx_t_6 = __pyx_v_GtIsoXY; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 610, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 610, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 610, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_5, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 610, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 610, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+0611: dp = int((1 - f) * NdotIsoXY(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_NdotIsoXY); __pyx_t_8 = __pyx_v_NdotIsoXY; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_23 = PyTuple_New(1+1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_23, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyNumber_Multiply(__pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 611, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_dp = __pyx_t_2;
+0612: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+0613: if pdelNxy == []:
__pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 613, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 613, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_22 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_22 < 0)) __PYX_ERR(0, 613, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_22) { /* … */ goto __pyx_L5; }
+0614: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L7_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0615: count = 0
__pyx_v_count = 0;
+0616: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+0617: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 617, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 617, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 617, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 617, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_23 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_25 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 617, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_23) { __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_23); __pyx_t_23 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_25, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 617, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 617, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+0618: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_25 = 1; } } __pyx_t_23 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_25, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_23, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 618, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+0619: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_26 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_26, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
}
+0620: I[xt, yt] = p + count + 1
__pyx_t_27 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+0621: X[p + count] = xt
__pyx_t_29 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+0622: Y[p + count] = yt
__pyx_t_30 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+0623: a[p + count] = 1
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+0624: r[p + count] = 1
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_r.diminfo[0].strides) = 1;
+0625: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_xt;
__pyx_t_36 = __pyx_v_yt;
__pyx_t_37 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+0626: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_38 = (__pyx_v_p + __pyx_v_count);
__pyx_t_39 = 1;
__pyx_t_40 = __pyx_v_xt;
__pyx_t_41 = __pyx_v_yt;
__pyx_t_42 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_39, __pyx_pybuffernd_col.diminfo[1].strides));
+0627: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_43 = (__pyx_v_p + __pyx_v_count);
__pyx_t_44 = 2;
__pyx_t_45 = __pyx_v_xt;
__pyx_t_46 = __pyx_v_yt;
__pyx_t_47 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
+0628: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+0629: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
0630: else:
+0631: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L14_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
}
__pyx_L5:;
+0632: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_48 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_48, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_48, 0+__pyx_t_25, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 1+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_48, 2+__pyx_t_25, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 3+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_48, 4+__pyx_t_25, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_48, 5+__pyx_t_25, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_48, 6+__pyx_t_25, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_48, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 632, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_48 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_48 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_48); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_48 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 632, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_49 = Py_TYPE(__pyx_t_8)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_8); if (unlikely(!__pyx_t_23)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_48 = __pyx_t_49(__pyx_t_8); if (unlikely(!__pyx_t_48)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_48); if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_8), 2) < 0) __PYX_ERR(0, 632, __pyx_L1_error) __pyx_t_49 = NULL; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_49 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 632, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 632, __pyx_L1_error) if (!(likely(((__pyx_t_48) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_48, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 632, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 632, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_15 = ((PyArrayObject *)__pyx_t_48); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 632, __pyx_L1_error) } __pyx_t_15 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_48)); __pyx_t_48 = 0;
+0633: w = 0
__pyx_v_w = 0;
+0634: count = 0
__pyx_v_count = 0;
+0635: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+0636: xt = xtrial[w]
__pyx_t_50 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+0637: yt = ytrial[w]
__pyx_t_51 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+0638: if I[xt, yt] == 0:
__pyx_t_52 = __pyx_v_xt;
__pyx_t_53 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_53, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+0639: I[xt, yt] = p + count + 1
__pyx_t_54 = __pyx_v_xt;
__pyx_t_55 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+0640: X[p + count] = xt
__pyx_t_56 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+0641: Y[p + count] = yt
__pyx_t_57 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+0642: a[p + count] = 1
__pyx_t_58 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+0643: r[p + count] = 1
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_r.diminfo[0].strides) = 1;
+0644: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
__pyx_t_61 = 0;
__pyx_t_62 = __pyx_v_xt;
__pyx_t_63 = __pyx_v_yt;
__pyx_t_64 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_64, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_61, __pyx_pybuffernd_col.diminfo[1].strides));
+0645: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_65 = (__pyx_v_p + __pyx_v_count);
__pyx_t_66 = 1;
__pyx_t_67 = __pyx_v_xt;
__pyx_t_68 = __pyx_v_yt;
__pyx_t_69 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_69, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_col.diminfo[1].strides));
+0646: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_70 = (__pyx_v_p + __pyx_v_count);
__pyx_t_71 = 2;
__pyx_t_72 = __pyx_v_xt;
__pyx_t_73 = __pyx_v_yt;
__pyx_t_74 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_col.diminfo[1].strides));
+0647: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+0648: if w < dp - 1:
__pyx_t_22 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L22;
}
+0649: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
0650: else:
+0651: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_48 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_48, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0;
__pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_5 = NULL;
__pyx_t_25 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
__pyx_t_25 = 1;
}
}
__pyx_t_7 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_25, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_48);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_25, __pyx_t_48);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_25, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_7, 5+__pyx_t_25, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_7, 6+__pyx_t_25, __pyx_int_1);
__pyx_t_48 = 0;
__pyx_t_8 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 651, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_23 = PyList_GET_ITEM(sequence, 0);
__pyx_t_7 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(__pyx_t_7);
#else
__pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 651, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_49 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_1); if (unlikely(!__pyx_t_23)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
index = 1; __pyx_t_7 = __pyx_t_49(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_1), 2) < 0) __PYX_ERR(0, 651, __pyx_L1_error)
__pyx_t_49 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_49 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 651, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 651, __pyx_L1_error)
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 651, __pyx_L1_error)
__pyx_t_14 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 651, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
__pyx_t_15 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 651, __pyx_L1_error)
}
__pyx_t_15 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
+0652: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+0653: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
0654:
+0655: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0656: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
0657:
+0658: for k in range(0, p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_k = __pyx_t_76;
+0659: if a[k] == 1:
__pyx_t_77 = __pyx_v_k;
__pyx_t_22 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_22) {
/* … */
}
}
+0660: a[k] = 0
__pyx_t_78 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+0661: xo = X[k]
__pyx_t_79 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_X.diminfo[0].strides));
+0662: yo = Y[k]
__pyx_t_80 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Y.diminfo[0].strides));
+0663: Io = I[xo, yo]
__pyx_t_81 = __pyx_v_xo;
__pyx_t_82 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_I.diminfo[1].strides));
+0664: rad = r[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_r.diminfo[0].strides));
+0665: red = col[k, 0]
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_85, __pyx_pybuffernd_col.diminfo[1].strides));
+0666: green = col[k, 1]
__pyx_t_86 = __pyx_v_k;
__pyx_t_87 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_col.diminfo[1].strides));
+0667: blue = col[k, 2]
__pyx_t_88 = __pyx_v_k;
__pyx_t_89 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_col.diminfo[1].strides));
0668:
+0669: for deli in range(rad + 1):
__pyx_t_90 = (__pyx_v_rad + 1);
for (__pyx_t_91 = 0; __pyx_t_91 < __pyx_t_90; __pyx_t_91+=1) {
__pyx_v_deli = __pyx_t_91;
+0670: for delj in range(rad + 1):
__pyx_t_92 = (__pyx_v_rad + 1);
for (__pyx_t_93 = 0; __pyx_t_93 < __pyx_t_92; __pyx_t_93+=1) {
__pyx_v_delj = __pyx_t_93;
+0671: if (deli) ** 2 + (delj) ** 2 <= (rad + 0.5) ** 2:
__pyx_t_22 = (((__Pyx_pow_PY_LONG_LONG(__pyx_v_deli, 2) + __Pyx_pow_PY_LONG_LONG(__pyx_v_delj, 2)) <= pow((__pyx_v_rad + 0.5), 2.0)) != 0);
if (__pyx_t_22) {
/* … */
}
}
}
+0672: i, j = xo + deli, yo + delj
__pyx_t_94 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_95 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_94;
__pyx_v_j = __pyx_t_95;
+0673: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L34_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L34_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0674: if I[i, j] == 0:
__pyx_t_95 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+0675: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L37;
}
+0676: PN = I[i - 1, j]
__pyx_t_97 = (__pyx_v_i - 1);
__pyx_t_98 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_98, __pyx_pybuffernd_I.diminfo[1].strides));
0677: else:
+0678: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L37:;
+0679: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L38;
}
+0680: PW = I[i, j - 1]
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_I.diminfo[1].strides));
0681: else:
+0682: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L38:;
+0683: if PN == Io or PW == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L40_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0684: I[i, j] = Io
__pyx_t_101 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0685: Col[i, j, 2] = red
__pyx_t_103 = __pyx_v_i;
__pyx_t_104 = __pyx_v_j;
__pyx_t_105 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0686: Col[i, j, 1] = green
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = __pyx_v_j;
__pyx_t_108 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0687: Col[i, j, 0] = blue
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = __pyx_v_j;
__pyx_t_111 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0688: a[k] = 1
__pyx_t_112 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0689:
+0690: i, j = xo - deli, yo + delj
__pyx_t_113 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_114 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_113;
__pyx_v_j = __pyx_t_114;
+0691: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L43_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L43_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0692: if I[i, j] == 0:
__pyx_t_114 = __pyx_v_i;
__pyx_t_113 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+0693: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L46;
}
+0694: PS = I[i + 1, j]
__pyx_t_115 = (__pyx_v_i + 1);
__pyx_t_116 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides));
0695: else:
+0696: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L46:;
+0697: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L47;
}
+0698: PW = I[i, j - 1]
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides));
0699: else:
+0700: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L47:;
+0701: if PW == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L49_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L49_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0702: I[i, j] = Io
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0703: Col[i, j, 2] = red
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0704: Col[i, j, 1] = green
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_126 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0705: Col[i, j, 0] = blue
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
__pyx_t_129 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0706: a[k] = 1
__pyx_t_130 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0707:
+0708: i, j = xo - deli, yo - delj
__pyx_t_131 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_132 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_131;
__pyx_v_j = __pyx_t_132;
+0709: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L52_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L52_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0710: if I[i, j] == 0:
__pyx_t_132 = __pyx_v_i;
__pyx_t_131 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+0711: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L55;
}
+0712: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
0713: else:
+0714: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L55:;
+0715: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L56;
}
+0716: PE = I[i, j + 1]
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides));
0717: else:
+0718: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L56:;
+0719: if PE == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L58_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L58_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0720: I[i, j] = Io
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0721: Col[i, j, 2] = red
__pyx_t_139 = __pyx_v_i;
__pyx_t_140 = __pyx_v_j;
__pyx_t_141 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0722: Col[i, j, 1] = green
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = __pyx_v_j;
__pyx_t_144 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0723: Col[i, j, 0] = blue
__pyx_t_145 = __pyx_v_i;
__pyx_t_146 = __pyx_v_j;
__pyx_t_147 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0724: a[k] = 1
__pyx_t_148 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0725:
+0726: i, j = xo + deli, yo - delj
__pyx_t_149 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_150 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_149;
__pyx_v_j = __pyx_t_150;
+0727: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L61_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0728: if I[i, j] == 0:
__pyx_t_150 = __pyx_v_i;
__pyx_t_149 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_149, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+0729: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L64;
}
+0730: PN = I[i - 1, j]
__pyx_t_151 = (__pyx_v_i - 1);
__pyx_t_152 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
0731: else:
+0732: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L64:;
+0733: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L65;
}
+0734: PE = I[i, j + 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
0735: else:
+0736: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L65:;
+0737: if PN == Io or PE == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L67_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L67_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+0738: I[i, j] = Io
__pyx_t_155 = __pyx_v_i;
__pyx_t_156 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0739: Col[i, j, 2] = red
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_159 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0740: Col[i, j, 1] = green
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = __pyx_v_j;
__pyx_t_162 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0741: Col[i, j, 0] = blue
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
__pyx_t_165 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0742: a[k] = 1
__pyx_t_166 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0743:
+0744: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0745: for i in range(p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_i = __pyx_t_76;
+0746: r[i] = r[i] + 1
__pyx_t_90 = __pyx_v_i;
__pyx_t_91 = __pyx_v_i;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_r.diminfo[0].strides)) + 1);
}
+0747: nnz = cv2.countNonZero(I)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 747, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 747, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); } } if (!__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 747, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 747, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 747, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_75 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_75 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 747, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_nnz = __pyx_t_75; }
0748:
0749:
0750:
+0751: obj.p = p
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_6) < 0) __PYX_ERR(0, 751, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+0752: toc = time.time()
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (__pyx_t_23) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_23); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 752, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } else { __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 752, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 752, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_toc = __pyx_t_21;
+0753: obj.exetime = toc - tic
__pyx_t_6 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 753, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_6) < 0) __PYX_ERR(0, 753, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+0754: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_delete); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_5 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_167 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_167, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_167, 0+__pyx_t_25, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_167, 1+__pyx_t_25, __pyx_t_48); __pyx_t_7 = 0; __pyx_t_48 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_167, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_167 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_167, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_167, 0+__pyx_t_25, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_167, 1+__pyx_t_25, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_167, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_6) < 0) __PYX_ERR(0, 754, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+0755: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_167 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_delete); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_7 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_25, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_25, __pyx_t_48); __pyx_t_1 = 0; __pyx_t_48 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_5, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_167))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_167); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_167); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_167, function); __pyx_t_25 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_25, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_25, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_167, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_6) < 0) __PYX_ERR(0, 755, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+0756: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 756, __pyx_L1_error)
+0757: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 757, __pyx_L1_error)
+0758: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
0759:
0760:
+0761: def Evolve_2D_Isotropic_Continuous_with_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_11Evolve_2D_Isotropic_Continuous_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_11Evolve_2D_Isotropic_Continuous_with_gr2D = {"Evolve_2D_Isotropic_Continuous_with_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_11Evolve_2D_Isotropic_Continuous_with_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_11Evolve_2D_Isotropic_Continuous_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_Continuous_with_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_10Evolve_2D_Isotropic_Continuous_with_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_10Evolve_2D_Isotropic_Continuous_with_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_NdotIsoXY = NULL;
PyObject *__pyx_v_GtIsoXY = NULL;
PyObject *__pyx_v_gr2D = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_rmax;
PY_LONG_LONG __pyx_v_win;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_gr2DValmax;
float __pyx_v_dr;
float __pyx_v_rad;
float __pyx_v_tmp;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_gr2DVal = 0;
CYTHON_UNUSED PyArrayObject *__pyx_v_rold = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_gr2DVal;
__Pyx_Buffer __pyx_pybuffer_gr2DVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
__Pyx_LocalBuf_ND __pyx_pybuffernd_rold;
__Pyx_Buffer __pyx_pybuffer_rold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Isotropic_Continuous_with_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_gr2DVal.pybuffer.buf = NULL;
__pyx_pybuffer_gr2DVal.refcount = 0;
__pyx_pybuffernd_gr2DVal.data = NULL;
__pyx_pybuffernd_gr2DVal.rcbuffer = &__pyx_pybuffer_gr2DVal;
__pyx_pybuffer_rold.pybuffer.buf = NULL;
__pyx_pybuffer_rold.refcount = 0;
__pyx_pybuffernd_rold.data = NULL;
__pyx_pybuffernd_rold.rcbuffer = &__pyx_pybuffer_rold;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_34);
__Pyx_XDECREF(__pyx_t_192);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_rold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Isotropic_Continuous_with_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_rold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_NdotIsoXY);
__Pyx_XDECREF(__pyx_v_GtIsoXY);
__Pyx_XDECREF(__pyx_v_gr2D);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_gr2DVal);
__Pyx_XDECREF((PyObject *)__pyx_v_rold);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__21 = PyTuple_Pack(64, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_NdotIsoXY, __pyx_n_s_GtIsoXY, __pyx_n_s_gr2D, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_countim, __pyx_n_s_rmax, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_w, __pyx_n_s_Iter, __pyx_n_s_gr2DValmax, __pyx_n_s_dr, __pyx_n_s_rad, __pyx_n_s_tmp, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_r, __pyx_n_s_gr2DVal, __pyx_n_s_rold, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 761, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__21);
__Pyx_GIVEREF(__pyx_tuple__21);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_11Evolve_2D_Isotropic_Continuous_with_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 761, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Isotropic_Continuous_w_2, __pyx_t_2) < 0) __PYX_ERR(0, 761, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__22 = (PyObject*)__Pyx_PyCode_New(1, 0, 64, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__21, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Isotropic_Continuous_w_2, 761, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__22)) __PYX_ERR(0, 761, __pyx_L1_error)
0762:
0763: # Grabbing data from the input object
+0764: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 764, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 764, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+0765: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 765, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 765, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+0766: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 766, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 766, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+0767: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 767, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 767, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+0768: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 768, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+0769: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+0770: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 770, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+0771: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 771, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+0772: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+0773: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+0774: NdotIsoXY = obj.NdotIsoXY
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_NdotIsoXY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_NdotIsoXY = __pyx_t_1; __pyx_t_1 = 0;
+0775: GtIsoXY = obj.GtIsoXY
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_GtIsoXY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 775, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_GtIsoXY = __pyx_t_1; __pyx_t_1 = 0;
+0776: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+0777: gr2D = obj.gr2D
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_gr2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 777, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_gr2D = __pyx_t_1; __pyx_t_1 = 0;
0778:
0779: # Declaring other variables
0780: cdef double tic, toc
0781: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, xt, yt, dp, nnz, countim, rmax, win, xmin, xmax, ymin, ymax, i, j, k, xo, yo, w, Iter
0782: cdef float gr2DValmax, dr, rad, tmp, dt, f, t, red, green, blue
+0783: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 783, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 783, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 783, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+0784: cdef np.ndarray[np.int8_t, ndim = 1] a = np.zeros(MN, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 784, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 784, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 784, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0785: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 785, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 785, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+0786: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 786, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 786, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0787: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 787, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 787, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+0788: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 788, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 788, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0789: cdef np.ndarray[np.float64_t, ndim = 1] r = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 789, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 789, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+0790: cdef np.ndarray[np.float64_t, ndim = 1] gr2DVal = np.zeros(MN, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 790, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_gr2DVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 790, __pyx_L1_error) } else {__pyx_pybuffernd_gr2DVal.diminfo[0].strides = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_gr2DVal.diminfo[0].shape = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_gr2DVal = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+0791: cdef np.ndarray[np.float64_t, ndim = 1] rold = np.zeros(MN, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 791, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_rold.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_rold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_rold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 791, __pyx_L1_error) } else {__pyx_pybuffernd_rold.diminfo[0].strides = __pyx_pybuffernd_rold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_rold.diminfo[0].shape = __pyx_pybuffernd_rold.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_rold = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+0792: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 792, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 792, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_18 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+0793: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 793, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 793, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_19 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+0794: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 794, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+0795: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 795, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 795, __pyx_L1_error) } __pyx_t_19 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+0796: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (__pyx_t_6) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 796, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_8 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 796, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 796, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_tic = __pyx_t_23;
+0797: t = 0
__pyx_v_t = 0.0;
+0798: p = 0
__pyx_v_p = 0;
+0799: dp = 0
__pyx_v_dp = 0;
+0800: countim = 0
__pyx_v_countim = 0;
+0801: nnz = cv2.countNonZero(I)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 801, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 801, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 801, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 801, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 801, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_8); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 801, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_nnz = __pyx_t_2;
0802:
+0803: Iter = 1
__pyx_v_Iter = 1;
+0804: while nnz < MN:
while (1) {
__pyx_t_24 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_24) break;
+0805: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+0806: dt = 1.0 / GtIsoXY(t)
__pyx_t_6 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_INCREF(__pyx_v_GtIsoXY); __pyx_t_1 = __pyx_v_GtIsoXY; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 806, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_8, 1.0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 806, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_dt = __pyx_t_3;
+0807: dp = int((1 - f) * NdotIsoXY(t) * dt)
__pyx_t_1 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_NdotIsoXY); __pyx_t_6 = __pyx_v_NdotIsoXY; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_25, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Multiply(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = PyNumber_Multiply(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyNumber_Int(__pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_8); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 807, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_dp = __pyx_t_2;
+0808: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+0809: if pdelNxy == []:
__pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 809, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 809, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_24 < 0)) __PYX_ERR(0, 809, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_24) { /* … */ goto __pyx_L5; }
+0810: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L7_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0811: count = 0
__pyx_v_count = 0;
+0812: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+0813: xt = np.random.randint(0, m - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_7 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_27, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 813, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_xt = __pyx_t_2;
+0814: yt = np.random.randint(0, n - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 814, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 814, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 814, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 814, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 814, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 814, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 814, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_yt = __pyx_t_2;
+0815: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+0816: I[xt, yt] = p + count + 1
__pyx_t_29 = __pyx_v_xt;
__pyx_t_30 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+0817: X[p + count] = xt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+0818: Y[p + count] = yt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+0819: a[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+0820: gr2DVal[p + count] = gr2D(xt, yt, p + count + 1)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 820, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 820, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 820, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_gr2D); __pyx_t_6 = __pyx_v_gr2D; __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_27 = 1; } } __pyx_t_34 = PyTuple_New(3+__pyx_t_27); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 820, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_34, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_34, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_34, 2+__pyx_t_27, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_25 = 0; __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_34, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 820, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 820, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_36 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_35;
+0821: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_37 = (__pyx_v_p + __pyx_v_count);
__pyx_t_38 = 0;
__pyx_t_39 = __pyx_v_xt;
__pyx_t_40 = __pyx_v_yt;
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_col.diminfo[1].strides));
+0822: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_42 = (__pyx_v_p + __pyx_v_count);
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_xt;
__pyx_t_45 = __pyx_v_yt;
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+0823: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_47 = (__pyx_v_p + __pyx_v_count);
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_xt;
__pyx_t_50 = __pyx_v_yt;
__pyx_t_51 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+0824: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+0825: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
0826: else:
+0827: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L14_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
}
__pyx_L5:;
+0828: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_27, __pyx_t_6); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 5+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 6+__pyx_t_27, __pyx_int_1); __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 828, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_34 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_34 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_34 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_25 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 828, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_52 = Py_TYPE(__pyx_t_25)->tp_iternext; index = 0; __pyx_t_34 = __pyx_t_52(__pyx_t_25); if (unlikely(!__pyx_t_34)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_34); index = 1; __pyx_t_5 = __pyx_t_52(__pyx_t_25); if (unlikely(!__pyx_t_5)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_25), 2) < 0) __PYX_ERR(0, 828, __pyx_L1_error) __pyx_t_52 = NULL; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_52 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 828, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_34) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_34, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 828, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 828, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_34); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 828, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_34)); __pyx_t_34 = 0; __pyx_t_14 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 828, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+0829: w = 0
__pyx_v_w = 0;
+0830: count = 0
__pyx_v_count = 0;
+0831: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+0832: xt = xtrial[w]
__pyx_t_53 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+0833: yt = ytrial[w]
__pyx_t_54 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+0834: if I[xt, yt] == 0:
__pyx_t_55 = __pyx_v_xt;
__pyx_t_56 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_56, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+0835: I[xt, yt] = p + count + 1
__pyx_t_57 = __pyx_v_xt;
__pyx_t_58 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_58, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+0836: X[p + count] = xt
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+0837: Y[p + count] = yt
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+0838: a[p + count] = 1
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+0839: gr2DVal[p + count] = gr2D(xt, yt, p + count + 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_gr2D); __pyx_t_7 = __pyx_v_gr2D; __pyx_t_6 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(3+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_t_34); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_25); __pyx_t_5 = 0; __pyx_t_34 = 0; __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 839, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_62 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_35;
+0840: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_63 = (__pyx_v_p + __pyx_v_count);
__pyx_t_64 = 0;
__pyx_t_65 = __pyx_v_xt;
__pyx_t_66 = __pyx_v_yt;
__pyx_t_67 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_col.diminfo[1].strides));
+0841: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_68 = (__pyx_v_p + __pyx_v_count);
__pyx_t_69 = 1;
__pyx_t_70 = __pyx_v_xt;
__pyx_t_71 = __pyx_v_yt;
__pyx_t_72 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_69, __pyx_pybuffernd_col.diminfo[1].strides));
+0842: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_73 = (__pyx_v_p + __pyx_v_count);
__pyx_t_74 = 2;
__pyx_t_75 = __pyx_v_xt;
__pyx_t_76 = __pyx_v_yt;
__pyx_t_77 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
+0843: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+0844: if w < dp - 1:
__pyx_t_24 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L22;
}
+0845: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
0846: else:
+0847: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__pyx_t_5 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
__pyx_t_27 = 1;
}
}
__pyx_t_6 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_27, __pyx_t_7);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_6, 4+__pyx_t_27, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_34);
PyTuple_SET_ITEM(__pyx_t_6, 5+__pyx_t_27, __pyx_t_34);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_6, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_7 = 0;
__pyx_t_25 = 0;
__pyx_t_34 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 847, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_8 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_8 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_34 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 847, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_52 = Py_TYPE(__pyx_t_34)->tp_iternext;
index = 0; __pyx_t_8 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_8)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
index = 1; __pyx_t_6 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_6)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_34), 2) < 0) __PYX_ERR(0, 847, __pyx_L1_error)
__pyx_t_52 = NULL;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
__pyx_t_52 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 847, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 847, __pyx_L1_error)
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 847, __pyx_L1_error)
__pyx_t_13 = ((PyArrayObject *)__pyx_t_8);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 847, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_8));
__pyx_t_8 = 0;
__pyx_t_14 = ((PyArrayObject *)__pyx_t_6);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 847, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_6));
__pyx_t_6 = 0;
+0848: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+0849: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
0850:
+0851: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0852: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
0853:
+0854: gr2DValmax = 0
__pyx_v_gr2DValmax = 0.0;
+0855: for i in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_i = __pyx_t_79;
+0856: if a[i] == 1:
__pyx_t_80 = __pyx_v_i;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+0857: tmp = gr2DVal[i]
__pyx_t_81 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_gr2DVal.diminfo[0].strides));
+0858: if tmp > gr2DValmax:
__pyx_t_24 = ((__pyx_v_tmp > __pyx_v_gr2DValmax) != 0);
if (__pyx_t_24) {
/* … */
}
+0859: gr2DValmax = tmp
__pyx_v_gr2DValmax = __pyx_v_tmp;
0860:
+0861: for k in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_k = __pyx_t_79;
+0862: if a[k] == 1:
__pyx_t_82 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+0863: xo = X[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
+0864: yo = Y[k]
__pyx_t_84 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
+0865: Io = I[xo, yo]
__pyx_t_85 = __pyx_v_xo;
__pyx_t_86 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
+0866: dr = gr2DVal[k] / gr2DValmax
__pyx_t_87 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_gr2DVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_gr2DValmax));
+0867: r[k] = r[k] + dr
__pyx_t_88 = __pyx_v_k;
__pyx_t_89 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_r.diminfo[0].strides)) + __pyx_v_dr);
+0868: rad = r[k]
__pyx_t_90 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_r.diminfo[0].strides));
+0869: a[k] = 0
__pyx_t_91 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+0870: rmax = math.ceil(rad)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 870, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 870, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble(__pyx_v_rad); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 870, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_34) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 870, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_34); __pyx_t_34 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 870, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_92 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_92 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 870, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_rmax = __pyx_t_92;
+0871: red = col[k, 0]
__pyx_t_92 = __pyx_v_k;
__pyx_t_93 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_col.diminfo[1].strides));
+0872: green = col[k, 1]
__pyx_t_94 = __pyx_v_k;
__pyx_t_95 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_95, __pyx_pybuffernd_col.diminfo[1].strides));
+0873: blue = col[k, 2]
__pyx_t_96 = __pyx_v_k;
__pyx_t_97 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_col.diminfo[1].strides));
+0874: for deli in range(0, rmax + 1):
__pyx_t_98 = (__pyx_v_rmax + 1);
for (__pyx_t_99 = 0; __pyx_t_99 < __pyx_t_98; __pyx_t_99+=1) {
__pyx_v_deli = __pyx_t_99;
+0875: for delj in range (0, rmax + 1):
__pyx_t_100 = (__pyx_v_rmax + 1);
for (__pyx_t_101 = 0; __pyx_t_101 < __pyx_t_100; __pyx_t_101+=1) {
__pyx_v_delj = __pyx_t_101;
+0876: if deli ** 2 + delj ** 2 <= (rad + 0.5) ** 2:
__pyx_t_24 = (((__Pyx_pow_PY_LONG_LONG(__pyx_v_deli, 2) + __Pyx_pow_PY_LONG_LONG(__pyx_v_delj, 2)) <= pow((__pyx_v_rad + 0.5), 2.0)) != 0);
if (__pyx_t_24) {
/* … */
}
}
}
+0877: i, j = xo + deli, yo + delj
__pyx_t_102 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_103 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_102;
__pyx_v_j = __pyx_t_103;
+0878: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L38_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0879: if I[i, j] == 0:
__pyx_t_103 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+0880: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L41;
}
+0881: PN = I[i - 1, j]
__pyx_t_105 = (__pyx_v_i - 1);
__pyx_t_106 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides));
0882: else:
+0883: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L41:;
+0884: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L42;
}
+0885: PE = I[i, j + 1]
__pyx_t_107 = __pyx_v_i;
__pyx_t_108 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides));
0886: else:
+0887: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L42:;
+0888: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L43;
}
+0889: PW = I[i, j - 1]
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_I.diminfo[1].strides));
0890: else:
+0891: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L43:;
+0892: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L44;
}
+0893: PS = I[i + 1, j]
__pyx_t_111 = (__pyx_v_i + 1);
__pyx_t_112 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_I.diminfo[1].strides));
0894: else:
+0895: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L44:;
0896:
+0897: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L46_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L46_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L46_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L46_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0898: I[i, j] = Io
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0899: Col[i, j, 2] = red
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_117 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0900: Col[i, j, 1] = green
__pyx_t_118 = __pyx_v_i;
__pyx_t_119 = __pyx_v_j;
__pyx_t_120 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0901: Col[i, j, 0] = blue
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0902: a[k] = 1
__pyx_t_124 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0903:
+0904: i, j = xo - deli, yo + delj
__pyx_t_125 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_126 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_125;
__pyx_v_j = __pyx_t_126;
+0905: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L51_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0906: if I[i, j] == 0:
__pyx_t_126 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+0907: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L54;
}
+0908: PN = I[i - 1, j]
__pyx_t_127 = (__pyx_v_i - 1);
__pyx_t_128 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides));
0909: else:
+0910: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L54:;
+0911: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L55;
}
+0912: PE = I[i, j + 1]
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides));
0913: else:
+0914: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L55:;
+0915: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L56;
}
+0916: PW = I[i, j - 1]
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides));
0917: else:
+0918: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L56:;
+0919: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L57;
}
+0920: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
0921: else:
+0922: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L57:;
0923:
+0924: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L59_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0925: I[i, j] = Io
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0926: Col[i, j, 2] = red
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0927: Col[i, j, 1] = green
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0928: Col[i, j, 0] = blue
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0929: a[k] = 1
__pyx_t_146 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0930:
+0931: i, j = xo - deli, yo - delj
__pyx_t_147 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_148 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_147;
__pyx_v_j = __pyx_t_148;
+0932: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L64_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0933: if I[i, j] == 0:
__pyx_t_148 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+0934: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L67;
}
+0935: PN = I[i - 1, j]
__pyx_t_149 = (__pyx_v_i - 1);
__pyx_t_150 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides));
0936: else:
+0937: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L67:;
+0938: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L68;
}
+0939: PE = I[i, j + 1]
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
0940: else:
+0941: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L68:;
+0942: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L69;
}
+0943: PW = I[i, j - 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
0944: else:
+0945: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L69:;
+0946: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L70;
}
+0947: PS = I[i + 1, j]
__pyx_t_155 = (__pyx_v_i + 1);
__pyx_t_156 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides));
0948: else:
+0949: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L70:;
0950:
+0951: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L72_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L72_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L72_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L72_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0952: I[i, j] = Io
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0953: Col[i, j, 2] = red
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_161 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0954: Col[i, j, 1] = green
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_164 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0955: Col[i, j, 0] = blue
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0956: a[k] = 1
__pyx_t_168 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
0957:
+0958: i, j = xo + deli, yo - delj
__pyx_t_169 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_170 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_169;
__pyx_v_j = __pyx_t_170;
+0959: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L77_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0960: if I[i, j] == 0:
__pyx_t_170 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+0961: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L80;
}
+0962: PN = I[i - 1, j]
__pyx_t_171 = (__pyx_v_i - 1);
__pyx_t_172 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_I.diminfo[1].strides));
0963: else:
+0964: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L80:;
+0965: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L81;
}
+0966: PE = I[i, j + 1]
__pyx_t_173 = __pyx_v_i;
__pyx_t_174 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_I.diminfo[1].strides));
0967: else:
+0968: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L81:;
+0969: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L82;
}
+0970: PW = I[i, j - 1]
__pyx_t_175 = __pyx_v_i;
__pyx_t_176 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_I.diminfo[1].strides));
0971: else:
+0972: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L82:;
+0973: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L83;
}
+0974: PS = I[i + 1, j]
__pyx_t_177 = (__pyx_v_i + 1);
__pyx_t_178 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides));
0975: else:
+0976: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L83:;
0977:
+0978: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L85_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+0979: I[i, j] = Io
__pyx_t_179 = __pyx_v_i;
__pyx_t_180 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+0980: Col[i, j, 2] = red
__pyx_t_181 = __pyx_v_i;
__pyx_t_182 = __pyx_v_j;
__pyx_t_183 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+0981: Col[i, j, 1] = green
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
__pyx_t_186 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+0982: Col[i, j, 0] = blue
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
__pyx_t_189 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+0983: a[k] = 1
__pyx_t_190 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_190, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+0984: if a[k] == 0:
__pyx_t_98 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+0985: win = rmax
__pyx_v_win = __pyx_v_rmax;
+0986: xmin = max(0, xo - win)
__pyx_t_99 = (__pyx_v_xo - __pyx_v_win);
__pyx_t_191 = 0;
if (((__pyx_t_99 > __pyx_t_191) != 0)) {
__pyx_t_100 = __pyx_t_99;
} else {
__pyx_t_100 = __pyx_t_191;
}
__pyx_v_xmin = __pyx_t_100;
+0987: xmax = min(m - 1, xo + win)
__pyx_t_100 = (__pyx_v_xo + __pyx_v_win);
__pyx_t_99 = (__pyx_v_m - 1);
if (((__pyx_t_100 < __pyx_t_99) != 0)) {
__pyx_t_101 = __pyx_t_100;
} else {
__pyx_t_101 = __pyx_t_99;
}
__pyx_v_xmax = __pyx_t_101;
+0988: ymin = max(0, yo - win)
__pyx_t_101 = (__pyx_v_yo - __pyx_v_win);
__pyx_t_191 = 0;
if (((__pyx_t_101 > __pyx_t_191) != 0)) {
__pyx_t_100 = __pyx_t_101;
} else {
__pyx_t_100 = __pyx_t_191;
}
__pyx_v_ymin = __pyx_t_100;
+0989: ymax = min(n - 1, yo + win)
__pyx_t_100 = (__pyx_v_yo + __pyx_v_win);
__pyx_t_101 = (__pyx_v_n - 1);
if (((__pyx_t_100 < __pyx_t_101) != 0)) {
__pyx_t_99 = __pyx_t_100;
} else {
__pyx_t_99 = __pyx_t_101;
}
__pyx_v_ymax = __pyx_t_99;
+0990: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_99 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
0991:
+0992: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+0993: nnz = cv2.countNonZero(I)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 993, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 993, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_25, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 993, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 993, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_6, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 993, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_78 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_78 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 993, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_nnz = __pyx_t_78; }
0994:
0995:
0996:
+0997: obj.p = p
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 997, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_1) < 0) __PYX_ERR(0, 997, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+0998: toc = time.time()
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 998, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 998, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (__pyx_t_25) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 998, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 998, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 998, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_toc = __pyx_t_23;
+0999: obj.exetime = toc - tic
__pyx_t_1 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_1) < 0) __PYX_ERR(0, 999, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+1000: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_delete); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_arange); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_192 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_192, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_192, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_192, 1+__pyx_t_27, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_192, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_27 = 1; } } __pyx_t_192 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); if (__pyx_t_34) { __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_192, 0, __pyx_t_34); __pyx_t_34 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_192, 0+__pyx_t_27, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_192, 1+__pyx_t_27, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_192, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_1) < 0) __PYX_ERR(0, 1000, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+1001: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_192 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_delete); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_arange); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_7); __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_192))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_192); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_192); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_192, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_34) { __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_34); __pyx_t_34 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_192, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_1) < 0) __PYX_ERR(0, 1001, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+1002: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 1002, __pyx_L1_error)
+1003: obj.gr2DVal = gr2DVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_gr2DVal, ((PyObject *)__pyx_v_gr2DVal)) < 0) __PYX_ERR(0, 1003, __pyx_L1_error)
+1004: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 1004, __pyx_L1_error)
1005:
+1006: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
1007:
1008:
+1009: def Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_13Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_13Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D = {"Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_13Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_13Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_12Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_12Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_r;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_21);
__Pyx_XDECREF(__pyx_t_23);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__23 = PyTuple_Pack(38, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_r, __pyx_n_s_Io, __pyx_n_s_Iter, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 1009, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__23);
__Pyx_GIVEREF(__pyx_tuple__23);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_13Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_without_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1009, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura, __pyx_t_2) < 0) __PYX_ERR(0, 1009, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(1, 0, 38, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__23, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura, 1009, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(0, 1009, __pyx_L1_error)
1010: # Grabbing data from the input object
+1011: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1011, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+1012: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1012, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1012, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+1013: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1013, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1013, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+1014: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1014, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1014, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+1015: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1015, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1015, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+1016: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1016, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1016, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+1017: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1017, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1017, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+1018: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1018, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1018, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+1019: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1019, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+1020: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+1021: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
1022:
1023: # Declaring other variables
1024: cdef double tic, toc
1025: cdef long long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, r, Io, Iter
1026: cdef float red, green, blue
+1027: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1027, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1027, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1027, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1028: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1028, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1028, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1028, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1029: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1029, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1029, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1029, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1030: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1030, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1030, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1030, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+1031: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1031, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1031, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1031, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+1032: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1032, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1032, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1032, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_13 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1033: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1033, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1033, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1033, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_14 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+1034: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1034, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1034, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1034, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1034, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1034, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+1035: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_6) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1035, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1035, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1035, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+1036: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1036, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1036, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1036, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1036, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_18 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_18 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1036, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_tic = __pyx_t_18;
1037:
+1038: if pdelNxy == []:
__pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1038, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1038, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 1038, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_19) { /* … */ goto __pyx_L3; }
+1039: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1039, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_20 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_20(__pyx_t_1); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_20(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1039, __pyx_L1_error)
__pyx_t_20 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_20 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1039, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1039, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1039, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1039, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1039, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
1040: else:
+1041: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_21 = NULL;
__pyx_t_22 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_21 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_21)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_21);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_22 = 1;
}
}
__pyx_t_23 = PyTuple_New(7+__pyx_t_22); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_21) {
__Pyx_GIVEREF(__pyx_t_21); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_21); __pyx_t_21 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_22, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_22, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_22, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 3+__pyx_t_22, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_23, 4+__pyx_t_22, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_23, 5+__pyx_t_22, __pyx_t_6);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_23, 6+__pyx_t_22, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_23, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1041, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_23 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_23);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_23 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1041, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_20 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_20(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_23 = __pyx_t_20(__pyx_t_6); if (unlikely(!__pyx_t_23)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_6), 2) < 0) __PYX_ERR(0, 1041, __pyx_L1_error)
__pyx_t_20 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_20 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1041, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1041, __pyx_L1_error)
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1041, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1041, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1041, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
}
__pyx_L3:;
1042:
+1043: if labelsorted == 1:
__pyx_t_19 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_19) {
/* … */
}
+1044: X, Y = labelsort(n, X, Y)
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; __pyx_t_22 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_22 = 1; } } __pyx_t_1 = PyTuple_New(3+__pyx_t_22); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_22, __pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_22, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_22, ((PyObject *)__pyx_v_Y)); __pyx_t_4 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1044, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1044, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_20 = Py_TYPE(__pyx_t_4)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_20(__pyx_t_4); if (unlikely(!__pyx_t_23)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_1 = __pyx_t_20(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_4), 2) < 0) __PYX_ERR(0, 1044, __pyx_L1_error) __pyx_t_20 = NULL; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1044, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1044, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1044, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1044, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1044, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+1045: r = 0
__pyx_v_r = 0;
1046:
+1047: Iter = 1
__pyx_v_Iter = 1;
+1048: while True:
while (1) {
1049:
+1050: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_24 = 0; __pyx_t_24 < __pyx_t_2; __pyx_t_24+=1) {
__pyx_v_k = __pyx_t_24;
+1051: I[X[k], Y[k]] = k + 1
__pyx_t_25 = __pyx_v_k;
__pyx_t_26 = __pyx_v_k;
__pyx_t_27 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_25, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_28 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_26, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+1052: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = 0;
__pyx_t_31 = __pyx_v_k;
__pyx_t_32 = __pyx_v_k;
__pyx_t_33 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_34 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_35 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_col.diminfo[1].strides));
+1053: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_36 = __pyx_v_k;
__pyx_t_37 = 1;
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = __pyx_v_k;
__pyx_t_40 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_41 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_42 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_37, __pyx_pybuffernd_col.diminfo[1].strides));
+1054: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = 2;
__pyx_t_45 = __pyx_v_k;
__pyx_t_46 = __pyx_v_k;
__pyx_t_47 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_48 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_49 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
}
1055:
+1056: showriteframe(sa, sf, fd, r, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_r, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1057: r = 1
__pyx_v_r = 1;
1058:
+1059: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_1) {
__pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
} else {
__pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_4, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_7, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1059, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 1059, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_19) break;
+1060: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_24 = 0; __pyx_t_24 < __pyx_t_2; __pyx_t_24+=1) {
__pyx_v_k = __pyx_t_24;
+1061: if a[k] == 1:
__pyx_t_50 = __pyx_v_k;
__pyx_t_19 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_19) {
/* … */
}
}
+1062: a[k] = 0
__pyx_t_51 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+1063: xo = X[k]
__pyx_t_52 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_X.diminfo[0].strides));
+1064: yo = Y[k]
__pyx_t_53 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Y.diminfo[0].strides));
+1065: Io = I[xo, yo]
__pyx_t_54 = __pyx_v_xo;
__pyx_t_55 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides));
+1066: red = col[k, 0]
__pyx_t_56 = __pyx_v_k;
__pyx_t_57 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_57, __pyx_pybuffernd_col.diminfo[1].strides));
+1067: green = col[k, 1]
__pyx_t_58 = __pyx_v_k;
__pyx_t_59 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_59, __pyx_pybuffernd_col.diminfo[1].strides));
+1068: blue = col[k, 2]
__pyx_t_60 = __pyx_v_k;
__pyx_t_61 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_61, __pyx_pybuffernd_col.diminfo[1].strides));
1069:
+1070: for deli in range(r + 1):
__pyx_t_62 = (__pyx_v_r + 1);
for (__pyx_t_63 = 0; __pyx_t_63 < __pyx_t_62; __pyx_t_63+=1) {
__pyx_v_deli = __pyx_t_63;
+1071: delj = r - deli
__pyx_v_delj = (__pyx_v_r - __pyx_v_deli);
+1072: i, j = xo + deli, yo + delj
__pyx_t_64 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_65 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_64;
__pyx_v_j = __pyx_t_65;
+1073: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L23_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L23_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1074: if I[i, j] == 0:
__pyx_t_65 = __pyx_v_i;
__pyx_t_64 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1075: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L26;
}
+1076: PN = I[i - 1, j]
__pyx_t_68 = (__pyx_v_i - 1);
__pyx_t_69 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_69, __pyx_pybuffernd_I.diminfo[1].strides));
1077: else:
+1078: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L26:;
+1079: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L27;
}
+1080: PW = I[i, j - 1]
__pyx_t_70 = __pyx_v_i;
__pyx_t_71 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_I.diminfo[1].strides));
1081: else:
+1082: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L27:;
+1083: if PN == Io or PW == Io:
__pyx_t_66 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L29_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L29_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1084: I[i, j] = Io
__pyx_t_72 = __pyx_v_i;
__pyx_t_73 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1085: Col[i, j, 2] = red
__pyx_t_74 = __pyx_v_i;
__pyx_t_75 = __pyx_v_j;
__pyx_t_76 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1086: Col[i, j, 1] = green
__pyx_t_77 = __pyx_v_i;
__pyx_t_78 = __pyx_v_j;
__pyx_t_79 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1087: Col[i, j, 0] = blue
__pyx_t_80 = __pyx_v_i;
__pyx_t_81 = __pyx_v_j;
__pyx_t_82 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_82, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1088: a[k] = 1
__pyx_t_83 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1089:
+1090: i, j = xo - deli, yo + delj
__pyx_t_84 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_85 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_84;
__pyx_v_j = __pyx_t_85;
+1091: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L32_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L32_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1092: if I[i, j] == 0:
__pyx_t_85 = __pyx_v_i;
__pyx_t_84 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1093: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L35;
}
+1094: PS = I[i + 1, j]
__pyx_t_86 = (__pyx_v_i + 1);
__pyx_t_87 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_I.diminfo[1].strides));
1095: else:
+1096: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L35:;
+1097: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L36;
}
+1098: PW = I[i, j - 1]
__pyx_t_88 = __pyx_v_i;
__pyx_t_89 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_I.diminfo[1].strides));
1099: else:
+1100: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L36:;
+1101: if PW == Io or PS == Io:
__pyx_t_66 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L38_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1102: I[i, j] = Io
__pyx_t_90 = __pyx_v_i;
__pyx_t_91 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_91, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1103: Col[i, j, 2] = red
__pyx_t_92 = __pyx_v_i;
__pyx_t_93 = __pyx_v_j;
__pyx_t_94 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_94, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1104: Col[i, j, 1] = green
__pyx_t_95 = __pyx_v_i;
__pyx_t_96 = __pyx_v_j;
__pyx_t_97 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1105: Col[i, j, 0] = blue
__pyx_t_98 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_100 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1106: a[k] = 1
__pyx_t_101 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1107:
+1108: i, j = xo - deli, yo - delj
__pyx_t_102 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_103 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_102;
__pyx_v_j = __pyx_t_103;
+1109: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L41_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L41_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1110: if I[i, j] == 0:
__pyx_t_103 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1111: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L44;
}
+1112: PS = I[i + 1, j]
__pyx_t_104 = (__pyx_v_i + 1);
__pyx_t_105 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_I.diminfo[1].strides));
1113: else:
+1114: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L44:;
+1115: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L45;
}
+1116: PE = I[i, j + 1]
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_I.diminfo[1].strides));
1117: else:
+1118: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L45:;
+1119: if PE == Io or PS == Io:
__pyx_t_66 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L47_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L47_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1120: I[i, j] = Io
__pyx_t_108 = __pyx_v_i;
__pyx_t_109 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1121: Col[i, j, 2] = red
__pyx_t_110 = __pyx_v_i;
__pyx_t_111 = __pyx_v_j;
__pyx_t_112 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1122: Col[i, j, 1] = green
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
__pyx_t_115 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1123: Col[i, j, 0] = blue
__pyx_t_116 = __pyx_v_i;
__pyx_t_117 = __pyx_v_j;
__pyx_t_118 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1124: a[k] = 1
__pyx_t_119 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1125:
+1126: i, j = xo + deli, yo - delj
__pyx_t_120 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_121 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_120;
__pyx_v_j = __pyx_t_121;
+1127: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L50_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L50_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
}
+1128: if I[i, j] == 0:
__pyx_t_121 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1129: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L53;
}
+1130: PN = I[i - 1, j]
__pyx_t_122 = (__pyx_v_i - 1);
__pyx_t_123 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_I.diminfo[1].strides));
1131: else:
+1132: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L53:;
+1133: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L54;
}
+1134: PE = I[i, j + 1]
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides));
1135: else:
+1136: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L54:;
+1137: if PN == Io or PE == Io:
__pyx_t_66 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L56_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L56_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1138: I[i, j] = Io
__pyx_t_126 = __pyx_v_i;
__pyx_t_127 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1139: Col[i, j, 2] = red
__pyx_t_128 = __pyx_v_i;
__pyx_t_129 = __pyx_v_j;
__pyx_t_130 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1140: Col[i, j, 1] = green
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = __pyx_v_j;
__pyx_t_133 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1141: Col[i, j, 0] = blue
__pyx_t_134 = __pyx_v_i;
__pyx_t_135 = __pyx_v_j;
__pyx_t_136 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1142: a[k] = 1
__pyx_t_137 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+1143: showriteframe(sa, sf, fd, r, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_r, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1144: r = r + 1
__pyx_v_r = (__pyx_v_r + 1);
}
+1145: if asy == 0:
__pyx_t_19 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1146: break
goto __pyx_L12_break;
1147: else:
+1148: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1148, __pyx_L1_error)
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1148, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
}
}
if (__pyx_t_7) {
__pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1148, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1148, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = __Pyx_PyInt_EqObjC(__pyx_t_23, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1148, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 1148, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_19) {
/* … */
}
+1149: break
goto __pyx_L12_break;
1150: else:
+1151: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1151, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+1152: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); __pyx_t_4 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1152, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1152, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+1153: a = np.ones(p, dtype=np.int8)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ones); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_int8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1153, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1153, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1153, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+1154: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_5 = NULL; __pyx_t_22 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_22 = 1; } } __pyx_t_21 = PyTuple_New(4+__pyx_t_22); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_22, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_22, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_22, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_21, 3+__pyx_t_22, __pyx_t_23); __pyx_t_6 = 0; __pyx_t_1 = 0; __pyx_t_23 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1154, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_21 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_21 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_21); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_21 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_23 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = Py_TYPE(__pyx_t_23)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_20(__pyx_t_23); if (unlikely(!__pyx_t_7)) goto __pyx_L60_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_21 = __pyx_t_20(__pyx_t_23); if (unlikely(!__pyx_t_21)) goto __pyx_L60_unpacking_failed; __Pyx_GOTREF(__pyx_t_21); if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_23), 2) < 0) __PYX_ERR(0, 1154, __pyx_L1_error) __pyx_t_20 = NULL; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; goto __pyx_L61_unpacking_done; __pyx_L60_unpacking_failed:; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_20 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1154, __pyx_L1_error) __pyx_L61_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1154, __pyx_L1_error) if (!(likely(((__pyx_t_21) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_21, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1154, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1154, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_21); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1154, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_21)); __pyx_t_21 = 0;
+1155: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
1156:
+1157: toc = time.time()
__pyx_t_21 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1157, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_21, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1157, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; __pyx_t_21 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_21 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_21)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_21); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_21) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_21); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1157, __pyx_L1_error) __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1157, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_18 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_18 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1157, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_toc = __pyx_t_18;
+1158: obj.exetime = toc - tic
__pyx_t_4 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1158, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_4) < 0) __PYX_ERR(0, 1158, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+1159: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 1159, __pyx_L1_error)
+1160: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 1160, __pyx_L1_error)
+1161: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 1161, __pyx_L1_error)
+1162: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 1162, __pyx_L1_error)
+1163: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
1164:
1165:
+1166: def Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_15Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_15Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D = {"Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_15Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_15Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_14Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_14Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_r;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_21);
__Pyx_XDECREF(__pyx_t_23);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__25 = PyTuple_Pack(38, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_r, __pyx_n_s_Io, __pyx_n_s_Iter, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 1166, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__25);
__Pyx_GIVEREF(__pyx_tuple__25);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_15Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_without_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1166, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_2, __pyx_t_2) < 0) __PYX_ERR(0, 1166, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__26 = (PyObject*)__Pyx_PyCode_New(1, 0, 38, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__25, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_2, 1166, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__26)) __PYX_ERR(0, 1166, __pyx_L1_error)
1167: # Grabbing data from the input object
+1168: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1168, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1168, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+1169: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1169, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+1170: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1170, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1170, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+1171: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1171, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1171, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+1172: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1172, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+1173: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1173, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+1174: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1174, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+1175: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1175, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+1176: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1176, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+1177: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+1178: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
1179:
1180: # Declaring other variables
1181: cdef double tic, toc
1182: cdef long long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, r, Io, Iter
1183: cdef float red, green, blue
+1184: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1184, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1184, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1185: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1185, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1185, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1186: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1186, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1186, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1187: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1187, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1187, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+1188: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1188, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1188, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+1189: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1189, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1189, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_13 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1190: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1190, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1190, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_14 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+1191: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1191, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+1192: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_6) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1192, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1192, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+1193: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1193, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1193, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_18 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_18 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1193, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_tic = __pyx_t_18;
1194:
+1195: if pdelNxy == []:
__pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1195, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 1195, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_19) { /* … */ goto __pyx_L3; }
+1196: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1196, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1196, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_20 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_20(__pyx_t_1); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_20(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1196, __pyx_L1_error)
__pyx_t_20 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_20 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1196, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1196, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1196, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1196, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1196, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
1197: else:
+1198: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_21 = NULL;
__pyx_t_22 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_21 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_21)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_21);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_22 = 1;
}
}
__pyx_t_23 = PyTuple_New(7+__pyx_t_22); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_21) {
__Pyx_GIVEREF(__pyx_t_21); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_21); __pyx_t_21 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_22, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_22, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_22, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 3+__pyx_t_22, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_23, 4+__pyx_t_22, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_23, 5+__pyx_t_22, __pyx_t_6);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_23, 6+__pyx_t_22, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_23, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1198, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_23 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_23);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_23 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1198, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_20 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_20(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_23 = __pyx_t_20(__pyx_t_6); if (unlikely(!__pyx_t_23)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_6), 2) < 0) __PYX_ERR(0, 1198, __pyx_L1_error)
__pyx_t_20 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_20 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1198, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1198, __pyx_L1_error)
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1198, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1198, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1198, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
}
__pyx_L3:;
1199:
+1200: if labelsorted == 1:
__pyx_t_19 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_19) {
/* … */
}
+1201: X, Y = labelsort(n, X, Y)
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; __pyx_t_22 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_22 = 1; } } __pyx_t_1 = PyTuple_New(3+__pyx_t_22); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_22, __pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_22, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_22, ((PyObject *)__pyx_v_Y)); __pyx_t_4 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1201, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_20 = Py_TYPE(__pyx_t_4)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_20(__pyx_t_4); if (unlikely(!__pyx_t_23)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_1 = __pyx_t_20(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_4), 2) < 0) __PYX_ERR(0, 1201, __pyx_L1_error) __pyx_t_20 = NULL; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1201, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1201, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1201, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1201, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1201, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+1202: r = 0
__pyx_v_r = 0;
1203:
+1204: Iter = 1
__pyx_v_Iter = 1;
+1205: while True:
while (1) {
1206:
+1207: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_24 = 0; __pyx_t_24 < __pyx_t_2; __pyx_t_24+=1) {
__pyx_v_k = __pyx_t_24;
+1208: I[X[k], Y[k]] = k + 1
__pyx_t_25 = __pyx_v_k;
__pyx_t_26 = __pyx_v_k;
__pyx_t_27 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_25, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_28 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_26, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+1209: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = 0;
__pyx_t_31 = __pyx_v_k;
__pyx_t_32 = __pyx_v_k;
__pyx_t_33 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_34 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_35 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_col.diminfo[1].strides));
+1210: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_36 = __pyx_v_k;
__pyx_t_37 = 1;
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = __pyx_v_k;
__pyx_t_40 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_41 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_42 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_37, __pyx_pybuffernd_col.diminfo[1].strides));
+1211: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = 2;
__pyx_t_45 = __pyx_v_k;
__pyx_t_46 = __pyx_v_k;
__pyx_t_47 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_48 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_49 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
}
1212:
+1213: showriteframe(sa, sf, fd, r, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_r, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1214: r = 1
__pyx_v_r = 1;
1215:
1216:
+1217: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_1) {
__pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
} else {
__pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_4, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1217, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_7, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1217, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 1217, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_19) break;
+1218: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_24 = 0; __pyx_t_24 < __pyx_t_2; __pyx_t_24+=1) {
__pyx_v_k = __pyx_t_24;
+1219: if a[k] == 1:
__pyx_t_50 = __pyx_v_k;
__pyx_t_19 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_19) {
/* … */
}
}
+1220: a[k] = 0
__pyx_t_51 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+1221: xo = X[k]
__pyx_t_52 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_X.diminfo[0].strides));
+1222: yo = Y[k]
__pyx_t_53 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Y.diminfo[0].strides));
+1223: Io = I[xo, yo]
__pyx_t_54 = __pyx_v_xo;
__pyx_t_55 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides));
+1224: red = col[k, 0]
__pyx_t_56 = __pyx_v_k;
__pyx_t_57 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_57, __pyx_pybuffernd_col.diminfo[1].strides));
+1225: green = col[k, 1]
__pyx_t_58 = __pyx_v_k;
__pyx_t_59 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_59, __pyx_pybuffernd_col.diminfo[1].strides));
+1226: blue = col[k, 2]
__pyx_t_60 = __pyx_v_k;
__pyx_t_61 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_61, __pyx_pybuffernd_col.diminfo[1].strides));
1227:
+1228: for deli in range(r + 1):
__pyx_t_62 = (__pyx_v_r + 1);
for (__pyx_t_63 = 0; __pyx_t_63 < __pyx_t_62; __pyx_t_63+=1) {
__pyx_v_deli = __pyx_t_63;
+1229: delj = r
__pyx_v_delj = __pyx_v_r;
+1230: i, j = xo + deli, yo + delj
__pyx_t_64 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_65 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_64;
__pyx_v_j = __pyx_t_65;
+1231: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L23_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L23_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1232: if I[i, j] == 0:
__pyx_t_65 = __pyx_v_i;
__pyx_t_64 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1233: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L26;
}
+1234: PN = I[i - 1, j]
__pyx_t_68 = (__pyx_v_i - 1);
__pyx_t_69 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_69, __pyx_pybuffernd_I.diminfo[1].strides));
1235: else:
+1236: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L26:;
+1237: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L27;
}
+1238: PW = I[i, j - 1]
__pyx_t_70 = __pyx_v_i;
__pyx_t_71 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_I.diminfo[1].strides));
1239: else:
+1240: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L27:;
+1241: if PN == Io or PW == Io:
__pyx_t_66 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L29_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L29_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1242: I[i, j] = Io
__pyx_t_72 = __pyx_v_i;
__pyx_t_73 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1243: Col[i, j, 2] = red
__pyx_t_74 = __pyx_v_i;
__pyx_t_75 = __pyx_v_j;
__pyx_t_76 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1244: Col[i, j, 1] = green
__pyx_t_77 = __pyx_v_i;
__pyx_t_78 = __pyx_v_j;
__pyx_t_79 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1245: Col[i, j, 0] = blue
__pyx_t_80 = __pyx_v_i;
__pyx_t_81 = __pyx_v_j;
__pyx_t_82 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_82, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1246: a[k] = 1
__pyx_t_83 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1247:
+1248: i, j = xo - deli, yo + delj
__pyx_t_84 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_85 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_84;
__pyx_v_j = __pyx_t_85;
+1249: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L32_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L32_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1250: if I[i, j] == 0:
__pyx_t_85 = __pyx_v_i;
__pyx_t_84 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1251: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L35;
}
+1252: PS = I[i + 1, j]
__pyx_t_86 = (__pyx_v_i + 1);
__pyx_t_87 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_I.diminfo[1].strides));
1253: else:
+1254: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L35:;
+1255: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L36;
}
+1256: PW = I[i, j - 1]
__pyx_t_88 = __pyx_v_i;
__pyx_t_89 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_I.diminfo[1].strides));
1257: else:
+1258: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L36:;
+1259: if PW == Io or PS == Io:
__pyx_t_66 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L38_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1260: I[i, j] = Io
__pyx_t_90 = __pyx_v_i;
__pyx_t_91 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_91, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1261: Col[i, j, 2] = red
__pyx_t_92 = __pyx_v_i;
__pyx_t_93 = __pyx_v_j;
__pyx_t_94 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_94, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1262: Col[i, j, 1] = green
__pyx_t_95 = __pyx_v_i;
__pyx_t_96 = __pyx_v_j;
__pyx_t_97 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1263: Col[i, j, 0] = blue
__pyx_t_98 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_100 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1264: a[k] = 1
__pyx_t_101 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1265:
+1266: i, j = xo - deli, yo - delj
__pyx_t_102 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_103 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_102;
__pyx_v_j = __pyx_t_103;
+1267: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L41_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L41_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1268: if I[i, j] == 0:
__pyx_t_103 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1269: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L44;
}
+1270: PS = I[i + 1, j]
__pyx_t_104 = (__pyx_v_i + 1);
__pyx_t_105 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_I.diminfo[1].strides));
1271: else:
+1272: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L44:;
+1273: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L45;
}
+1274: PE = I[i, j + 1]
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_I.diminfo[1].strides));
1275: else:
+1276: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L45:;
+1277: if PE == Io or PS == Io:
__pyx_t_66 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L47_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L47_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1278: I[i, j] = Io
__pyx_t_108 = __pyx_v_i;
__pyx_t_109 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1279: Col[i, j, 2] = red
__pyx_t_110 = __pyx_v_i;
__pyx_t_111 = __pyx_v_j;
__pyx_t_112 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1280: Col[i, j, 1] = green
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
__pyx_t_115 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1281: Col[i, j, 0] = blue
__pyx_t_116 = __pyx_v_i;
__pyx_t_117 = __pyx_v_j;
__pyx_t_118 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1282: a[k] = 1
__pyx_t_119 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1283:
+1284: i, j = xo + deli, yo - delj
__pyx_t_120 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_121 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_120;
__pyx_v_j = __pyx_t_121;
+1285: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L50_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L50_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1286: if I[i, j] == 0:
__pyx_t_121 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1287: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L53;
}
+1288: PN = I[i - 1, j]
__pyx_t_122 = (__pyx_v_i - 1);
__pyx_t_123 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_I.diminfo[1].strides));
1289: else:
+1290: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L53:;
+1291: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L54;
}
+1292: PE = I[i, j + 1]
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides));
1293: else:
+1294: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L54:;
+1295: if PN == Io or PE == Io:
__pyx_t_66 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L56_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L56_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1296: I[i, j] = Io
__pyx_t_126 = __pyx_v_i;
__pyx_t_127 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1297: Col[i, j, 2] = red
__pyx_t_128 = __pyx_v_i;
__pyx_t_129 = __pyx_v_j;
__pyx_t_130 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1298: Col[i, j, 1] = green
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = __pyx_v_j;
__pyx_t_133 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1299: Col[i, j, 0] = blue
__pyx_t_134 = __pyx_v_i;
__pyx_t_135 = __pyx_v_j;
__pyx_t_136 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1300: a[k] = 1
__pyx_t_137 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1301:
1302:
1303: # INTERCHANGE deli and delj
+1304: i, j = xo + delj, yo + deli
__pyx_t_138 = (__pyx_v_xo + __pyx_v_delj);
__pyx_t_139 = (__pyx_v_yo + __pyx_v_deli);
__pyx_v_i = __pyx_t_138;
__pyx_v_j = __pyx_t_139;
+1305: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L59_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1306: if I[i, j] == 0:
__pyx_t_139 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1307: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L62;
}
+1308: PN = I[i - 1, j]
__pyx_t_140 = (__pyx_v_i - 1);
__pyx_t_141 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_I.diminfo[1].strides));
1309: else:
+1310: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L62:;
+1311: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L63;
}
+1312: PW = I[i, j - 1]
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_I.diminfo[1].strides));
1313: else:
+1314: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L63:;
+1315: if PN == Io or PW == Io:
__pyx_t_66 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L65_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L65_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1316: I[i, j] = Io
__pyx_t_144 = __pyx_v_i;
__pyx_t_145 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_145, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1317: Col[i, j, 2] = red
__pyx_t_146 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_148 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_148, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1318: Col[i, j, 1] = green
__pyx_t_149 = __pyx_v_i;
__pyx_t_150 = __pyx_v_j;
__pyx_t_151 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1319: Col[i, j, 0] = blue
__pyx_t_152 = __pyx_v_i;
__pyx_t_153 = __pyx_v_j;
__pyx_t_154 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_154, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1320: a[k] = 1
__pyx_t_155 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1321:
+1322: i, j = xo - delj, yo + deli
__pyx_t_156 = (__pyx_v_xo - __pyx_v_delj);
__pyx_t_157 = (__pyx_v_yo + __pyx_v_deli);
__pyx_v_i = __pyx_t_156;
__pyx_v_j = __pyx_t_157;
+1323: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L68_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L68_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1324: if I[i, j] == 0:
__pyx_t_157 = __pyx_v_i;
__pyx_t_156 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1325: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L71;
}
+1326: PS = I[i + 1, j]
__pyx_t_158 = (__pyx_v_i + 1);
__pyx_t_159 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_159, __pyx_pybuffernd_I.diminfo[1].strides));
1327: else:
+1328: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L71:;
+1329: if j > 0:
__pyx_t_19 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L72;
}
+1330: PW = I[i, j - 1]
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_I.diminfo[1].strides));
1331: else:
+1332: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L72:;
+1333: if PW == Io or PS == Io:
__pyx_t_66 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L74_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L74_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1334: I[i, j] = Io
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1335: Col[i, j, 2] = red
__pyx_t_164 = __pyx_v_i;
__pyx_t_165 = __pyx_v_j;
__pyx_t_166 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1336: Col[i, j, 1] = green
__pyx_t_167 = __pyx_v_i;
__pyx_t_168 = __pyx_v_j;
__pyx_t_169 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1337: Col[i, j, 0] = blue
__pyx_t_170 = __pyx_v_i;
__pyx_t_171 = __pyx_v_j;
__pyx_t_172 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1338: a[k] = 1
__pyx_t_173 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1339:
+1340: i, j = xo - delj, yo - deli
__pyx_t_174 = (__pyx_v_xo - __pyx_v_delj);
__pyx_t_175 = (__pyx_v_yo - __pyx_v_deli);
__pyx_v_i = __pyx_t_174;
__pyx_v_j = __pyx_t_175;
+1341: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L77_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1342: if I[i, j] == 0:
__pyx_t_175 = __pyx_v_i;
__pyx_t_174 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1343: if i < m - 1:
__pyx_t_19 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L80;
}
+1344: PS = I[i + 1, j]
__pyx_t_176 = (__pyx_v_i + 1);
__pyx_t_177 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_176, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_177, __pyx_pybuffernd_I.diminfo[1].strides));
1345: else:
+1346: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L80:;
+1347: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L81;
}
+1348: PE = I[i, j + 1]
__pyx_t_178 = __pyx_v_i;
__pyx_t_179 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_178, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_179, __pyx_pybuffernd_I.diminfo[1].strides));
1349: else:
+1350: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L81:;
+1351: if PE == Io or PS == Io:
__pyx_t_66 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L83_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L83_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1352: I[i, j] = Io
__pyx_t_180 = __pyx_v_i;
__pyx_t_181 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_180, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_181, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1353: Col[i, j, 2] = red
__pyx_t_182 = __pyx_v_i;
__pyx_t_183 = __pyx_v_j;
__pyx_t_184 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1354: Col[i, j, 1] = green
__pyx_t_185 = __pyx_v_i;
__pyx_t_186 = __pyx_v_j;
__pyx_t_187 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1355: Col[i, j, 0] = blue
__pyx_t_188 = __pyx_v_i;
__pyx_t_189 = __pyx_v_j;
__pyx_t_190 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1356: a[k] = 1
__pyx_t_191 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1357:
+1358: i, j = xo + delj, yo - deli
__pyx_t_192 = (__pyx_v_xo + __pyx_v_delj);
__pyx_t_193 = (__pyx_v_yo - __pyx_v_deli);
__pyx_v_i = __pyx_t_192;
__pyx_v_j = __pyx_t_193;
+1359: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_66 = (0 <= __pyx_v_i);
if (__pyx_t_66) {
__pyx_t_66 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_67 = (__pyx_t_66 != 0);
if (__pyx_t_67) {
} else {
__pyx_t_19 = __pyx_t_67;
goto __pyx_L86_bool_binop_done;
}
__pyx_t_67 = (0 <= __pyx_v_j);
if (__pyx_t_67) {
__pyx_t_67 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_66 = (__pyx_t_67 != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L86_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
}
+1360: if I[i, j] == 0:
__pyx_t_193 = __pyx_v_i;
__pyx_t_192 = __pyx_v_j;
__pyx_t_19 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_193, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1361: if i > 0:
__pyx_t_19 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L89;
}
+1362: PN = I[i - 1, j]
__pyx_t_194 = (__pyx_v_i - 1);
__pyx_t_195 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_194, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_195, __pyx_pybuffernd_I.diminfo[1].strides));
1363: else:
+1364: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L89:;
+1365: if j < n - 1:
__pyx_t_19 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_19) {
/* … */
goto __pyx_L90;
}
+1366: PE = I[i, j + 1]
__pyx_t_196 = __pyx_v_i;
__pyx_t_197 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_I.diminfo[1].strides));
1367: else:
+1368: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L90:;
+1369: if PN == Io or PE == Io:
__pyx_t_66 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_66) {
} else {
__pyx_t_19 = __pyx_t_66;
goto __pyx_L92_bool_binop_done;
}
__pyx_t_66 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_19 = __pyx_t_66;
__pyx_L92_bool_binop_done:;
if (__pyx_t_19) {
/* … */
}
+1370: I[i, j] = Io
__pyx_t_198 = __pyx_v_i;
__pyx_t_199 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1371: Col[i, j, 2] = red
__pyx_t_200 = __pyx_v_i;
__pyx_t_201 = __pyx_v_j;
__pyx_t_202 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1372: Col[i, j, 1] = green
__pyx_t_203 = __pyx_v_i;
__pyx_t_204 = __pyx_v_j;
__pyx_t_205 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1373: Col[i, j, 0] = blue
__pyx_t_206 = __pyx_v_i;
__pyx_t_207 = __pyx_v_j;
__pyx_t_208 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_207, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_208, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1374: a[k] = 1
__pyx_t_209 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+1375: showriteframe(sa, sf, fd, r, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_r, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1376: r = r + 1
__pyx_v_r = (__pyx_v_r + 1);
}
1377:
+1378: if asy == 0:
__pyx_t_19 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_19) {
/* … */
}
+1379: break
goto __pyx_L12_break;
1380: else:
+1381: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1381, __pyx_L1_error)
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1381, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
}
}
if (__pyx_t_7) {
__pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1381, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1381, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = __Pyx_PyInt_EqObjC(__pyx_t_23, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1381, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_19 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_19 < 0)) __PYX_ERR(0, 1381, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if (__pyx_t_19) {
/* … */
}
+1382: break
goto __pyx_L12_break;
1383: else:
+1384: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1384, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+1385: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); __pyx_t_4 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1385, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1385, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1385, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+1386: a = np.ones(p, dtype=np.int8)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ones); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_int8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1386, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1386, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+1387: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_5 = NULL; __pyx_t_22 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_22 = 1; } } __pyx_t_21 = PyTuple_New(4+__pyx_t_22); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_21, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_21, 0+__pyx_t_22, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_21, 1+__pyx_t_22, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_21, 2+__pyx_t_22, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_21, 3+__pyx_t_22, __pyx_t_23); __pyx_t_6 = 0; __pyx_t_1 = 0; __pyx_t_23 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_21, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1387, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_21 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_21 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_21); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_21 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_23 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1387, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = Py_TYPE(__pyx_t_23)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_20(__pyx_t_23); if (unlikely(!__pyx_t_7)) goto __pyx_L96_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_21 = __pyx_t_20(__pyx_t_23); if (unlikely(!__pyx_t_21)) goto __pyx_L96_unpacking_failed; __Pyx_GOTREF(__pyx_t_21); if (__Pyx_IternextUnpackEndCheck(__pyx_t_20(__pyx_t_23), 2) < 0) __PYX_ERR(0, 1387, __pyx_L1_error) __pyx_t_20 = NULL; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; goto __pyx_L97_unpacking_done; __pyx_L96_unpacking_failed:; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_20 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1387, __pyx_L1_error) __pyx_L97_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1387, __pyx_L1_error) if (!(likely(((__pyx_t_21) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_21, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1387, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1387, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_21); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_16, &__pyx_t_15); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_15); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_16, __pyx_t_15); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1387, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_21)); __pyx_t_21 = 0;
+1388: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
1389:
+1390: toc = time.time()
__pyx_t_21 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_21)) __PYX_ERR(0, 1390, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_21); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_21, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1390, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; __pyx_t_21 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_21 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_21)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_21); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_21) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_21); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1390, __pyx_L1_error) __Pyx_DECREF(__pyx_t_21); __pyx_t_21 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1390, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_18 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_18 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1390, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_toc = __pyx_t_18;
+1391: obj.exetime = toc - tic
__pyx_t_4 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_4) < 0) __PYX_ERR(0, 1391, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+1392: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 1392, __pyx_L1_error)
+1393: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 1393, __pyx_L1_error)
+1394: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 1394, __pyx_L1_error)
+1395: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 1395, __pyx_L1_error)
+1396: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
1397:
1398:
+1399: def Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_17Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_17Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D = {"Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_17Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_17Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_16Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_16Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_gr2D = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_win;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_rmax;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_rad;
float __pyx_v_dr;
float __pyx_v_tmp;
float __pyx_v_gr2DValmax;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_gr2DVal = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_gr2DVal;
__Pyx_Buffer __pyx_pybuffer_gr2DVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_gr2DVal.pybuffer.buf = NULL;
__pyx_pybuffer_gr2DVal.refcount = 0;
__pyx_pybuffernd_gr2DVal.data = NULL;
__pyx_pybuffernd_gr2DVal.rcbuffer = &__pyx_pybuffer_gr2DVal;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_25);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_gr2D);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_gr2DVal);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__27 = PyTuple_Pack(51, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_gr2D, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_Io, __pyx_n_s_countim, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_rmax, __pyx_n_s_Iter, __pyx_n_s_rad, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_gr2DValmax, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_gr2DVal, __pyx_n_s_r, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(0, 1399, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__27);
__Pyx_GIVEREF(__pyx_tuple__27);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_17Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N4_with_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1399, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_3, __pyx_t_2) < 0) __PYX_ERR(0, 1399, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__28 = (PyObject*)__Pyx_PyCode_New(1, 0, 51, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__27, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_3, 1399, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__28)) __PYX_ERR(0, 1399, __pyx_L1_error)
1400: # Grabbing data from the input object
+1401: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1401, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+1402: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1402, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1402, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+1403: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1403, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1403, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+1404: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1404, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1404, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+1405: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1405, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1405, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+1406: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1406, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+1407: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1407, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+1408: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1408, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1408, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+1409: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1409, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1409, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+1410: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1410, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+1411: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1411, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+1412: gr2D = obj.gr2D
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_gr2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_gr2D = __pyx_t_1; __pyx_t_1 = 0;
1413:
1414: # Declaring other variables
1415: cdef double tic, toc
1416: cdef long long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, Io, countim, win, xmin, xmax, ymin, ymax, rmax, Iter
1417: cdef float rad, dr, tmp, gr2DValmax, red, green, blue
+1418: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1418, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1418, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1419: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1419, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1419, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1420: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1420, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1420, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1421: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1421, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1421, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+1422: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1422, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1422, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1422, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+1423: cdef np.ndarray[np.float64_t, ndim = 1] gr2DVal = np.zeros(p, dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1423, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1423, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_gr2DVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1423, __pyx_L1_error) } else {__pyx_pybuffernd_gr2DVal.diminfo[0].strides = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_gr2DVal.diminfo[0].shape = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_gr2DVal = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1424: cdef np.ndarray[np.float64_t, ndim = 1] r = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1424, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1424, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1425: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1425, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1425, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_15 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+1426: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1426, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1426, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1426, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_16 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1427: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1427, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1427, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_4) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1427, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1427, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1427, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+1428: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1428, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1428, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+1429: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1429, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1429, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1429, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_tic = __pyx_t_20;
1430:
+1431: if pdelNxy == []:
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1431, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 1431, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_21) { /* … */ goto __pyx_L3; }
+1432: [X, Y] = randindex2D(m, n, p)
__pyx_t_4 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1432, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1432, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_7)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_6), 2) < 0) __PYX_ERR(0, 1432, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1432, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1432, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1432, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1432, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1432, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
1433: else:
+1434: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_23 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_23 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_23)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_24 = 1;
}
}
__pyx_t_25 = PyTuple_New(7+__pyx_t_24); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_23) {
__Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_23); __pyx_t_23 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_24, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_24, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_24, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 5+__pyx_t_24, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 6+__pyx_t_24, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1434, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_25 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_25 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_25);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1434, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_25 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_25)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_25);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1434, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1434, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1434, __pyx_L1_error)
if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1434, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1434, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_25);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1434, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_25));
__pyx_t_25 = 0;
}
__pyx_L3:;
1435:
+1436: if labelsorted == 1:
__pyx_t_21 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_21) {
/* … */
}
+1437: X, Y = labelsort(n, X, Y)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_24 = 1; } } __pyx_t_6 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_24, __pyx_t_7); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_24, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_24, ((PyObject *)__pyx_v_Y)); __pyx_t_7 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1437, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_25 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_25 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_25 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_25 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_25)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_25); index = 1; __pyx_t_6 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_7), 2) < 0) __PYX_ERR(0, 1437, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1437, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1437, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1437, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1437, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1437, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
1438:
+1439: Iter = 1
__pyx_v_Iter = 1;
+1440: while True:
while (1) {
+1441: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+1442: I[X[k], Y[k]] = k + 1
__pyx_t_27 = __pyx_v_k;
__pyx_t_28 = __pyx_v_k;
__pyx_t_29 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_30 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+1443: gr2DVal[k] = gr2D(X[k], Y[k], k + 1)
__pyx_t_31 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_32 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_gr2D);
__pyx_t_1 = __pyx_v_gr2D; __pyx_t_5 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_24 = 1;
}
}
__pyx_t_23 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_24, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_24, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_24, __pyx_t_7);
__pyx_t_6 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_23, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_33 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_33 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 1443, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_34 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_33;
+1444: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = 0;
__pyx_t_37 = __pyx_v_k;
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_40 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_col.diminfo[1].strides));
+1445: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_42 = __pyx_v_k;
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_k;
__pyx_t_45 = __pyx_v_k;
__pyx_t_46 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_47 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_48 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+1446: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_49 = __pyx_v_k;
__pyx_t_50 = 2;
__pyx_t_51 = __pyx_v_k;
__pyx_t_52 = __pyx_v_k;
__pyx_t_53 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_54 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_55 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_col.diminfo[1].strides));
}
1447:
+1448: gr2DValmax = max(gr2DVal)
__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_gr2DVal)); __Pyx_GIVEREF(((PyObject *)__pyx_v_gr2DVal)); PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_v_gr2DVal)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_max, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_56 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_56 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 1448, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_gr2DValmax = __pyx_t_56;
+1449: countim = 0
__pyx_v_countim = 0;
+1450: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1451: countim = 1
__pyx_v_countim = 1;
+1452: rmax = 0
__pyx_v_rmax = 0;
+1453: Io = 0; xo = 0; yo = 0;
__pyx_v_Io = 0;
__pyx_v_xo = 0;
__pyx_v_yo = 0;
1454:
+1455: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_4) {
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
__pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __pyx_t_4 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_7, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 1455, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_21) break;
1456:
+1457: gr2DValmax = 0
__pyx_v_gr2DValmax = 0.0;
+1458: for i in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_i = __pyx_t_26;
+1459: if a[i] == 1:
__pyx_t_57 = __pyx_v_i;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+1460: tmp = gr2DVal[i]
__pyx_t_58 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_gr2DVal.diminfo[0].strides));
+1461: if tmp > gr2DValmax:
__pyx_t_21 = ((__pyx_v_tmp > __pyx_v_gr2DValmax) != 0);
if (__pyx_t_21) {
/* … */
}
+1462: gr2DValmax = tmp
__pyx_v_gr2DValmax = __pyx_v_tmp;
1463:
+1464: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+1465: if a[k] == 1:
__pyx_t_59 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+1466: xo = X[k]
__pyx_t_60 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_X.diminfo[0].strides));
+1467: yo = Y[k]
__pyx_t_61 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_Y.diminfo[0].strides));
+1468: Io = I[xo, yo]
__pyx_t_62 = __pyx_v_xo;
__pyx_t_63 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_I.diminfo[1].strides));
+1469: dr = gr2DVal[k] / gr2DValmax
__pyx_t_64 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_gr2DVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_gr2DValmax));
+1470: r[k] = r[k] + dr
__pyx_t_65 = __pyx_v_k;
__pyx_t_66 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_r.diminfo[0].strides)) + __pyx_v_dr);
+1471: rad = r[k]
__pyx_t_67 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_r.diminfo[0].strides));
+1472: a[k] = 0
__pyx_t_68 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+1473: rmax = math.ceil(rad)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_rad); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_4) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1473, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_69 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_23); if (unlikely((__pyx_t_69 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1473, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_rmax = __pyx_t_69;
+1474: red = col[k, 0]
__pyx_t_69 = __pyx_v_k;
__pyx_t_70 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_70, __pyx_pybuffernd_col.diminfo[1].strides));
+1475: green = col[k, 1]
__pyx_t_71 = __pyx_v_k;
__pyx_t_72 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_col.diminfo[1].strides));
+1476: blue = col[k, 2]
__pyx_t_73 = __pyx_v_k;
__pyx_t_74 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
1477:
1478: # OUTWARD
+1479: for deli in range(rmax + 1):
__pyx_t_75 = (__pyx_v_rmax + 1);
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_deli = __pyx_t_76;
+1480: for delj in range(rmax + 1):
__pyx_t_77 = (__pyx_v_rmax + 1);
for (__pyx_t_78 = 0; __pyx_t_78 < __pyx_t_77; __pyx_t_78+=1) {
__pyx_v_delj = __pyx_t_78;
1481:
+1482: if deli + delj <= rad :
__pyx_t_21 = (((__pyx_v_deli + __pyx_v_delj) <= __pyx_v_rad) != 0);
if (__pyx_t_21) {
/* … */
}
}
}
1483:
+1484: i, j = xo + deli, yo + delj
__pyx_t_79 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_80 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_79;
__pyx_v_j = __pyx_t_80;
+1485: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L30_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L30_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1486: if I[i, j] == 0:
__pyx_t_80 = __pyx_v_i;
__pyx_t_79 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_79, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1487: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L33;
}
+1488: PN = I[i - 1, j]
__pyx_t_83 = (__pyx_v_i - 1);
__pyx_t_84 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_I.diminfo[1].strides));
1489: else:
+1490: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L33:;
+1491: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L34;
}
+1492: PE = I[i, j + 1]
__pyx_t_85 = __pyx_v_i;
__pyx_t_86 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
1493: else:
+1494: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L34:;
+1495: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L35;
}
+1496: PW = I[i, j - 1]
__pyx_t_87 = __pyx_v_i;
__pyx_t_88 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_88, __pyx_pybuffernd_I.diminfo[1].strides));
1497: else:
+1498: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L35:;
+1499: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L36;
}
+1500: PS = I[i + 1, j]
__pyx_t_89 = (__pyx_v_i + 1);
__pyx_t_90 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_I.diminfo[1].strides));
1501: else:
+1502: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L36:;
+1503: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L38_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1504: I[i, j] = Io
__pyx_t_91 = __pyx_v_i;
__pyx_t_92 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1505: Col[i, j, 2] = red
__pyx_t_93 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
__pyx_t_95 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1506: Col[i, j, 1] = green
__pyx_t_96 = __pyx_v_i;
__pyx_t_97 = __pyx_v_j;
__pyx_t_98 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1507: Col[i, j, 0] = blue
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = __pyx_v_j;
__pyx_t_101 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1508: a[k] = 1
__pyx_t_102 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1509:
1510:
1511:
1512:
1513:
+1514: i, j = xo - deli, yo + delj
__pyx_t_103 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_104 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_103;
__pyx_v_j = __pyx_t_104;
+1515: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L43_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L43_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1516: if I[i, j] == 0:
__pyx_t_104 = __pyx_v_i;
__pyx_t_103 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_103, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1517: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L46;
}
+1518: PN = I[i - 1, j]
__pyx_t_105 = (__pyx_v_i - 1);
__pyx_t_106 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides));
1519: else:
+1520: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L46:;
+1521: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L47;
}
+1522: PE = I[i, j + 1]
__pyx_t_107 = __pyx_v_i;
__pyx_t_108 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides));
1523: else:
+1524: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L47:;
+1525: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L48;
}
+1526: PW = I[i, j - 1]
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_I.diminfo[1].strides));
1527: else:
+1528: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L48:;
+1529: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L49;
}
+1530: PS = I[i + 1, j]
__pyx_t_111 = (__pyx_v_i + 1);
__pyx_t_112 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_I.diminfo[1].strides));
1531: else:
+1532: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L49:;
+1533: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L51_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1534: I[i, j] = Io
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1535: Col[i, j, 2] = red
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_117 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1536: Col[i, j, 1] = green
__pyx_t_118 = __pyx_v_i;
__pyx_t_119 = __pyx_v_j;
__pyx_t_120 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1537: Col[i, j, 0] = blue
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1538: a[k] = 1
__pyx_t_124 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1539:
1540:
1541:
1542:
1543:
+1544: i, j = xo - deli, yo - delj
__pyx_t_125 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_126 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_125;
__pyx_v_j = __pyx_t_126;
+1545: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L56_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L56_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1546: if I[i, j] == 0:
__pyx_t_126 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1547: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L59;
}
+1548: PN = I[i - 1, j]
__pyx_t_127 = (__pyx_v_i - 1);
__pyx_t_128 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides));
1549: else:
+1550: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L59:;
+1551: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L60;
}
+1552: PE = I[i, j + 1]
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides));
1553: else:
+1554: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L60:;
+1555: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L61;
}
+1556: PW = I[i, j - 1]
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides));
1557: else:
+1558: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L61:;
+1559: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L62;
}
+1560: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
1561: else:
+1562: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L62:;
+1563: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L64_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1564: I[i, j] = Io
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1565: Col[i, j, 2] = red
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1566: Col[i, j, 1] = green
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1567: Col[i, j, 0] = blue
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1568: a[k] = 1
__pyx_t_146 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1569:
1570:
1571:
1572:
+1573: i, j = xo + deli, yo - delj
__pyx_t_147 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_148 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_147;
__pyx_v_j = __pyx_t_148;
+1574: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_81 = (0 <= __pyx_v_i);
if (__pyx_t_81) {
__pyx_t_81 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_81 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L69_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_81 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L69_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1575: if I[i, j] == 0:
__pyx_t_148 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1576: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L72;
}
+1577: PN = I[i - 1, j]
__pyx_t_149 = (__pyx_v_i - 1);
__pyx_t_150 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides));
1578: else:
+1579: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L72:;
+1580: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L73;
}
+1581: PE = I[i, j + 1]
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
1582: else:
+1583: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L73:;
+1584: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L74;
}
+1585: PW = I[i, j - 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
1586: else:
+1587: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L74:;
+1588: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L75;
}
+1589: PS = I[i + 1, j]
__pyx_t_155 = (__pyx_v_i + 1);
__pyx_t_156 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides));
1590: else:
+1591: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L75:;
+1592: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_81 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_81) {
} else {
__pyx_t_21 = __pyx_t_81;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_81 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_81;
__pyx_L77_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1593: I[i, j] = Io
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1594: Col[i, j, 2] = red
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_161 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1595: Col[i, j, 1] = green
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_164 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1596: Col[i, j, 0] = blue
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1597: a[k] = 1
__pyx_t_168 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+1598: if a[k] == 0:
__pyx_t_75 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1599: win = rmax
__pyx_v_win = __pyx_v_rmax;
+1600: xmin = max(0, xo - win)
__pyx_t_76 = (__pyx_v_xo - __pyx_v_win);
__pyx_t_169 = 0;
if (((__pyx_t_76 > __pyx_t_169) != 0)) {
__pyx_t_77 = __pyx_t_76;
} else {
__pyx_t_77 = __pyx_t_169;
}
__pyx_v_xmin = __pyx_t_77;
+1601: xmax = min(m - 1, xo + win)
__pyx_t_77 = (__pyx_v_xo + __pyx_v_win);
__pyx_t_76 = (__pyx_v_m - 1);
if (((__pyx_t_77 < __pyx_t_76) != 0)) {
__pyx_t_78 = __pyx_t_77;
} else {
__pyx_t_78 = __pyx_t_76;
}
__pyx_v_xmax = __pyx_t_78;
+1602: ymin = max(0, yo - win)
__pyx_t_78 = (__pyx_v_yo - __pyx_v_win);
__pyx_t_169 = 0;
if (((__pyx_t_78 > __pyx_t_169) != 0)) {
__pyx_t_77 = __pyx_t_78;
} else {
__pyx_t_77 = __pyx_t_169;
}
__pyx_v_ymin = __pyx_t_77;
+1603: ymax = min(n - 1, yo + win)
__pyx_t_77 = (__pyx_v_yo + __pyx_v_win);
__pyx_t_78 = (__pyx_v_n - 1);
if (((__pyx_t_77 < __pyx_t_78) != 0)) {
__pyx_t_76 = __pyx_t_77;
} else {
__pyx_t_76 = __pyx_t_78;
}
__pyx_v_ymax = __pyx_t_76;
+1604: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_76 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
1605:
1606:
1607:
+1608: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1609: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
}
1610:
+1611: if asy == 0:
__pyx_t_21 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1612: break
goto __pyx_L12_break;
1613: else:
+1614: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1614, __pyx_L1_error)
__pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_25))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_25);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_25, function);
}
}
if (__pyx_t_7) {
__pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1614, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1614, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_25 = __Pyx_PyInt_EqObjC(__pyx_t_23, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1614, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_25); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 1614, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
if (__pyx_t_21) {
/* … */
}
+1615: break
goto __pyx_L12_break;
1616: else:
+1617: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1617, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+1618: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_zeros); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); __pyx_t_25 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1618, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1618, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+1619: a = np.ones(p, dtype=np.int8)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_ones); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_int8); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_25) < 0) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, __pyx_t_4); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1619, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1619, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0;
+1620: r = np.zeros(p, dtype=np.float64)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyDict_New(); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_25, __pyx_n_s_dtype, __pyx_t_23) < 0) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, __pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1620, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_v_r, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1620, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_r, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0;
+1621: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_24 = 1; } } __pyx_t_5 = PyTuple_New(4+__pyx_t_24); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_24, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_24, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_24, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_24, __pyx_t_1); __pyx_t_25 = 0; __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_23))) || (PyList_CheckExact(__pyx_t_23))) { PyObject* sequence = __pyx_t_23; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1621, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } else { Py_ssize_t index = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_23); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_1)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L84_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L84_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1621, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L85_unpacking_done; __pyx_L84_unpacking_failed:; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1621, __pyx_L1_error) __pyx_L85_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1621, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1621, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1621, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1621, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+1622: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
1623:
+1624: toc = time.time()
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1624, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1624, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1624, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1624, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_23); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1624, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_toc = __pyx_t_20;
+1625: obj.exetime = toc - tic
__pyx_t_23 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1625, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_23) < 0) __PYX_ERR(0, 1625, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
+1626: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 1626, __pyx_L1_error)
+1627: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 1627, __pyx_L1_error)
+1628: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 1628, __pyx_L1_error)
+1629: obj.gr2DVal = gr2DVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_gr2DVal, ((PyObject *)__pyx_v_gr2DVal)) < 0) __PYX_ERR(0, 1629, __pyx_L1_error)
+1630: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 1630, __pyx_L1_error)
+1631: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
1632:
1633:
+1634: def Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_19Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_19Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D = {"Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_19Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_19Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_18Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_18Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_gr2D = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_win;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_rmax;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_rad;
float __pyx_v_dr;
float __pyx_v_tmp;
float __pyx_v_gr2DValmax;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_gr2DVal = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_gr2DVal;
__Pyx_Buffer __pyx_pybuffer_gr2DVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_gr2DVal.pybuffer.buf = NULL;
__pyx_pybuffer_gr2DVal.refcount = 0;
__pyx_pybuffernd_gr2DVal.data = NULL;
__pyx_pybuffernd_gr2DVal.rcbuffer = &__pyx_pybuffer_gr2DVal;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_25);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_gr2D);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_gr2DVal);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__29 = PyTuple_Pack(51, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_gr2D, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_Io, __pyx_n_s_countim, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_rmax, __pyx_n_s_Iter, __pyx_n_s_rad, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_gr2DValmax, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_gr2DVal, __pyx_n_s_r, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 1634, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__29);
__Pyx_GIVEREF(__pyx_tuple__29);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_19Evolve_2D_Anisotropic_SiteSaturated_NeighbourHoodBased_N8_with_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1634, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_4, __pyx_t_2) < 0) __PYX_ERR(0, 1634, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(1, 0, 51, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__29, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_4, 1634, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(0, 1634, __pyx_L1_error)
1635: # Grabbing data from the input object
+1636: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1636, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+1637: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1637, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+1638: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1638, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+1639: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1639, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+1640: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1640, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+1641: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+1642: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1642, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+1643: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1643, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+1644: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1644, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+1645: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+1646: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+1647: gr2D = obj.gr2D
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_gr2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_gr2D = __pyx_t_1; __pyx_t_1 = 0;
1648:
1649: # Declaring other variables
1650: cdef double tic, toc
1651: cdef long long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, Io, countim, win, xmin, xmax, ymin, ymax, rmax, Iter
1652: cdef float rad, dr, tmp, gr2DValmax, red, green, blue
+1653: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1653, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1653, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1653, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1654: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1654, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1654, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1654, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1655: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1655, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1655, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1655, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1656: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1656, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1656, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1656, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+1657: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1657, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1657, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1657, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+1658: cdef np.ndarray[np.float64_t, ndim = 1] gr2DVal = np.zeros(p, dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1658, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_gr2DVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1658, __pyx_L1_error) } else {__pyx_pybuffernd_gr2DVal.diminfo[0].strides = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_gr2DVal.diminfo[0].shape = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_gr2DVal = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1659: cdef np.ndarray[np.float64_t, ndim = 1] r = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1659, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1659, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1660: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1660, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1660, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_15 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+1661: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1661, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1661, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_16 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1662: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1662, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1662, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_4) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1662, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1662, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1662, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+1663: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1663, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1663, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1663, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+1664: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1664, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1664, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1664, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1664, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1664, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_tic = __pyx_t_20;
1665:
+1666: if pdelNxy == []:
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1666, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1666, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 1666, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_21) { /* … */ goto __pyx_L3; }
+1667: [X, Y] = randindex2D(m, n, p)
__pyx_t_4 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1667, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1667, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1667, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1667, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1667, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_7)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_6), 2) < 0) __PYX_ERR(0, 1667, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1667, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1667, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1667, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1667, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1667, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
1668: else:
+1669: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_23 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_23 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_23)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_24 = 1;
}
}
__pyx_t_25 = PyTuple_New(7+__pyx_t_24); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_23) {
__Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_23); __pyx_t_23 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_24, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_24, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_24, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 5+__pyx_t_24, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 6+__pyx_t_24, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1669, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_25 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_25 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_25);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1669, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_25 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_25)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_25);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1669, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1669, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1669, __pyx_L1_error)
if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1669, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1669, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_25);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1669, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_25));
__pyx_t_25 = 0;
}
__pyx_L3:;
1670:
+1671: if labelsorted == 1:
__pyx_t_21 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_21) {
/* … */
}
+1672: X, Y = labelsort(n, X, Y)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_24 = 1; } } __pyx_t_6 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_24, __pyx_t_7); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_24, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_24, ((PyObject *)__pyx_v_Y)); __pyx_t_7 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1672, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_25 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_25 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_25 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_25 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_25)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_25); index = 1; __pyx_t_6 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_7), 2) < 0) __PYX_ERR(0, 1672, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1672, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1672, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1672, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1672, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1672, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
1673:
1674:
+1675: Iter = 1
__pyx_v_Iter = 1;
+1676: while True:
while (1) {
+1677: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+1678: I[X[k], Y[k]] = k + 1
__pyx_t_27 = __pyx_v_k;
__pyx_t_28 = __pyx_v_k;
__pyx_t_29 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_30 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+1679: gr2DVal[k] = gr2D(X[k], Y[k], k + 1)
__pyx_t_31 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_32 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_gr2D);
__pyx_t_1 = __pyx_v_gr2D; __pyx_t_5 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_24 = 1;
}
}
__pyx_t_23 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_24, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_24, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_24, __pyx_t_7);
__pyx_t_6 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_23, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1679, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_33 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_33 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 1679, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_34 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_33;
+1680: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = 0;
__pyx_t_37 = __pyx_v_k;
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_40 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_col.diminfo[1].strides));
+1681: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_42 = __pyx_v_k;
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_k;
__pyx_t_45 = __pyx_v_k;
__pyx_t_46 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_47 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_48 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+1682: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_49 = __pyx_v_k;
__pyx_t_50 = 2;
__pyx_t_51 = __pyx_v_k;
__pyx_t_52 = __pyx_v_k;
__pyx_t_53 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_54 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_55 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_col.diminfo[1].strides));
}
1683:
+1684: gr2DValmax = max(gr2DVal)
__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_gr2DVal)); __Pyx_GIVEREF(((PyObject *)__pyx_v_gr2DVal)); PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_v_gr2DVal)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_max, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_56 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_56 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 1684, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_gr2DValmax = __pyx_t_56;
+1685: countim = 0
__pyx_v_countim = 0;
+1686: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1687: countim = 1
__pyx_v_countim = 1;
+1688: rmax = 0
__pyx_v_rmax = 0;
+1689: Io = 0; xo = 0; yo = 0;
__pyx_v_Io = 0;
__pyx_v_xo = 0;
__pyx_v_yo = 0;
1690:
+1691: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1691, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1691, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_4) {
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1691, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
__pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1691, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __pyx_t_4 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_7, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1691, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1691, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 1691, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_21) break;
1692:
+1693: gr2DValmax = 0
__pyx_v_gr2DValmax = 0.0;
+1694: for i in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_i = __pyx_t_26;
+1695: if a[i] == 1:
__pyx_t_57 = __pyx_v_i;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+1696: tmp = gr2DVal[i]
__pyx_t_58 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_gr2DVal.diminfo[0].strides));
+1697: if tmp > gr2DValmax:
__pyx_t_21 = ((__pyx_v_tmp > __pyx_v_gr2DValmax) != 0);
if (__pyx_t_21) {
/* … */
}
+1698: gr2DValmax = tmp
__pyx_v_gr2DValmax = __pyx_v_tmp;
1699:
+1700: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+1701: if a[k] == 1:
__pyx_t_59 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+1702: xo = X[k]
__pyx_t_60 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_X.diminfo[0].strides));
+1703: yo = Y[k]
__pyx_t_61 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_Y.diminfo[0].strides));
+1704: Io = I[xo, yo]
__pyx_t_62 = __pyx_v_xo;
__pyx_t_63 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_I.diminfo[1].strides));
+1705: dr = gr2DVal[k] / gr2DValmax
__pyx_t_64 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_gr2DVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_gr2DValmax));
+1706: r[k] = r[k] + dr
__pyx_t_65 = __pyx_v_k;
__pyx_t_66 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_r.diminfo[0].strides)) + __pyx_v_dr);
+1707: rad = r[k]
__pyx_t_67 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_r.diminfo[0].strides));
+1708: a[k] = 0
__pyx_t_68 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+1709: rmax = math.ceil(rad)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_rad); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_4) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1709, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_69 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_23); if (unlikely((__pyx_t_69 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1709, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_rmax = __pyx_t_69;
+1710: red = col[k, 0]
__pyx_t_69 = __pyx_v_k;
__pyx_t_70 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_70, __pyx_pybuffernd_col.diminfo[1].strides));
+1711: green = col[k, 1]
__pyx_t_71 = __pyx_v_k;
__pyx_t_72 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_col.diminfo[1].strides));
+1712: blue = col[k, 2]
__pyx_t_73 = __pyx_v_k;
__pyx_t_74 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
1713:
1714: # OUTWARD
+1715: for deli in range(rmax + 1):
__pyx_t_75 = (__pyx_v_rmax + 1);
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_deli = __pyx_t_76;
+1716: for delj in range(rmax + 1):
__pyx_t_77 = (__pyx_v_rmax + 1);
for (__pyx_t_78 = 0; __pyx_t_78 < __pyx_t_77; __pyx_t_78+=1) {
__pyx_v_delj = __pyx_t_78;
1717:
+1718: if deli <= rad and delj <= rad :
__pyx_t_79 = ((__pyx_v_deli <= __pyx_v_rad) != 0);
if (__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L29_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_delj <= __pyx_v_rad) != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L29_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
}
}
1719:
+1720: i, j = xo + deli, yo + delj
__pyx_t_80 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_81 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_80;
__pyx_v_j = __pyx_t_81;
+1721: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_79 = (0 <= __pyx_v_i);
if (__pyx_t_79) {
__pyx_t_79 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_79 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L32_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_79 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L32_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1722: if I[i, j] == 0:
__pyx_t_81 = __pyx_v_i;
__pyx_t_80 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_80, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1723: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L35;
}
+1724: PN = I[i - 1, j]
__pyx_t_83 = (__pyx_v_i - 1);
__pyx_t_84 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_I.diminfo[1].strides));
1725: else:
+1726: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L35:;
+1727: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L36;
}
+1728: PE = I[i, j + 1]
__pyx_t_85 = __pyx_v_i;
__pyx_t_86 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
1729: else:
+1730: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L36:;
+1731: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L37;
}
+1732: PW = I[i, j - 1]
__pyx_t_87 = __pyx_v_i;
__pyx_t_88 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_88, __pyx_pybuffernd_I.diminfo[1].strides));
1733: else:
+1734: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L37:;
+1735: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L38;
}
+1736: PS = I[i + 1, j]
__pyx_t_89 = (__pyx_v_i + 1);
__pyx_t_90 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_I.diminfo[1].strides));
1737: else:
+1738: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L38:;
+1739: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_79 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L40_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1740: I[i, j] = Io
__pyx_t_91 = __pyx_v_i;
__pyx_t_92 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1741: Col[i, j, 2] = red
__pyx_t_93 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
__pyx_t_95 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1742: Col[i, j, 1] = green
__pyx_t_96 = __pyx_v_i;
__pyx_t_97 = __pyx_v_j;
__pyx_t_98 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1743: Col[i, j, 0] = blue
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = __pyx_v_j;
__pyx_t_101 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1744: a[k] = 1
__pyx_t_102 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1745:
1746:
1747:
1748:
1749:
+1750: i, j = xo - deli, yo + delj
__pyx_t_103 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_104 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_103;
__pyx_v_j = __pyx_t_104;
+1751: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_79 = (0 <= __pyx_v_i);
if (__pyx_t_79) {
__pyx_t_79 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_79 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L45_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_79 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L45_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1752: if I[i, j] == 0:
__pyx_t_104 = __pyx_v_i;
__pyx_t_103 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_103, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1753: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L48;
}
+1754: PN = I[i - 1, j]
__pyx_t_105 = (__pyx_v_i - 1);
__pyx_t_106 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides));
1755: else:
+1756: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L48:;
+1757: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L49;
}
+1758: PE = I[i, j + 1]
__pyx_t_107 = __pyx_v_i;
__pyx_t_108 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides));
1759: else:
+1760: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L49:;
+1761: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L50;
}
+1762: PW = I[i, j - 1]
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_I.diminfo[1].strides));
1763: else:
+1764: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L50:;
+1765: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L51;
}
+1766: PS = I[i + 1, j]
__pyx_t_111 = (__pyx_v_i + 1);
__pyx_t_112 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_I.diminfo[1].strides));
1767: else:
+1768: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L51:;
+1769: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_79 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L53_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1770: I[i, j] = Io
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1771: Col[i, j, 2] = red
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_117 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1772: Col[i, j, 1] = green
__pyx_t_118 = __pyx_v_i;
__pyx_t_119 = __pyx_v_j;
__pyx_t_120 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1773: Col[i, j, 0] = blue
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1774: a[k] = 1
__pyx_t_124 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1775:
1776:
1777:
1778:
1779:
+1780: i, j = xo - deli, yo - delj
__pyx_t_125 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_126 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_125;
__pyx_v_j = __pyx_t_126;
+1781: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_79 = (0 <= __pyx_v_i);
if (__pyx_t_79) {
__pyx_t_79 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_79 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L58_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_79 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L58_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1782: if I[i, j] == 0:
__pyx_t_126 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1783: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L61;
}
+1784: PN = I[i - 1, j]
__pyx_t_127 = (__pyx_v_i - 1);
__pyx_t_128 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides));
1785: else:
+1786: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L61:;
+1787: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L62;
}
+1788: PE = I[i, j + 1]
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides));
1789: else:
+1790: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L62:;
+1791: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L63;
}
+1792: PW = I[i, j - 1]
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides));
1793: else:
+1794: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L63:;
+1795: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L64;
}
+1796: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
1797: else:
+1798: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L64:;
+1799: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_79 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L66_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L66_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L66_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L66_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1800: I[i, j] = Io
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1801: Col[i, j, 2] = red
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1802: Col[i, j, 1] = green
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1803: Col[i, j, 0] = blue
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1804: a[k] = 1
__pyx_t_146 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1805:
1806:
1807:
1808:
+1809: i, j = xo + deli, yo - delj
__pyx_t_147 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_148 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_147;
__pyx_v_j = __pyx_t_148;
+1810: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_79 = (0 <= __pyx_v_i);
if (__pyx_t_79) {
__pyx_t_79 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_82 = (__pyx_t_79 != 0);
if (__pyx_t_82) {
} else {
__pyx_t_21 = __pyx_t_82;
goto __pyx_L71_bool_binop_done;
}
__pyx_t_82 = (0 <= __pyx_v_j);
if (__pyx_t_82) {
__pyx_t_82 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_79 = (__pyx_t_82 != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L71_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1811: if I[i, j] == 0:
__pyx_t_148 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1812: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L74;
}
+1813: PN = I[i - 1, j]
__pyx_t_149 = (__pyx_v_i - 1);
__pyx_t_150 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides));
1814: else:
+1815: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L74:;
+1816: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L75;
}
+1817: PE = I[i, j + 1]
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
1818: else:
+1819: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L75:;
+1820: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L76;
}
+1821: PW = I[i, j - 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
1822: else:
+1823: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L76:;
+1824: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
goto __pyx_L77;
}
+1825: PS = I[i + 1, j]
__pyx_t_155 = (__pyx_v_i + 1);
__pyx_t_156 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides));
1826: else:
+1827: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L77:;
+1828: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_79 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L79_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L79_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_79) {
} else {
__pyx_t_21 = __pyx_t_79;
goto __pyx_L79_bool_binop_done;
}
__pyx_t_79 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_21 = __pyx_t_79;
__pyx_L79_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+1829: I[i, j] = Io
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1830: Col[i, j, 2] = red
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_161 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1831: Col[i, j, 1] = green
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_164 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1832: Col[i, j, 0] = blue
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1833: a[k] = 1
__pyx_t_168 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+1834: if a[k] == 0:
__pyx_t_75 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1835: win = rmax
__pyx_v_win = __pyx_v_rmax;
+1836: xmin = max(0, xo - win)
__pyx_t_76 = (__pyx_v_xo - __pyx_v_win);
__pyx_t_169 = 0;
if (((__pyx_t_76 > __pyx_t_169) != 0)) {
__pyx_t_77 = __pyx_t_76;
} else {
__pyx_t_77 = __pyx_t_169;
}
__pyx_v_xmin = __pyx_t_77;
+1837: xmax = min(m - 1, xo + win)
__pyx_t_77 = (__pyx_v_xo + __pyx_v_win);
__pyx_t_76 = (__pyx_v_m - 1);
if (((__pyx_t_77 < __pyx_t_76) != 0)) {
__pyx_t_78 = __pyx_t_77;
} else {
__pyx_t_78 = __pyx_t_76;
}
__pyx_v_xmax = __pyx_t_78;
+1838: ymin = max(0, yo - win)
__pyx_t_78 = (__pyx_v_yo - __pyx_v_win);
__pyx_t_169 = 0;
if (((__pyx_t_78 > __pyx_t_169) != 0)) {
__pyx_t_77 = __pyx_t_78;
} else {
__pyx_t_77 = __pyx_t_169;
}
__pyx_v_ymin = __pyx_t_77;
+1839: ymax = min(n - 1, yo + win)
__pyx_t_77 = (__pyx_v_yo + __pyx_v_win);
__pyx_t_78 = (__pyx_v_n - 1);
if (((__pyx_t_77 < __pyx_t_78) != 0)) {
__pyx_t_76 = __pyx_t_77;
} else {
__pyx_t_76 = __pyx_t_78;
}
__pyx_v_ymax = __pyx_t_76;
+1840: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_76 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
1841:
1842:
1843:
+1844: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1845: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
}
+1846: if asy == 0:
__pyx_t_21 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+1847: break
goto __pyx_L12_break;
1848: else:
+1849: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1849, __pyx_L1_error)
__pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1849, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_25))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_25);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_25, function);
}
}
if (__pyx_t_7) {
__pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1849, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1849, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_25 = __Pyx_PyInt_EqObjC(__pyx_t_23, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1849, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_25); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 1849, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
if (__pyx_t_21) {
/* … */
}
+1850: break
goto __pyx_L12_break;
1851: else:
+1852: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1852, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+1853: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_zeros); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); __pyx_t_25 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1853, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1853, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1853, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+1854: a = np.ones(p, dtype=np.int8)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_ones); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_int8); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_25) < 0) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, __pyx_t_4); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1854, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1854, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1854, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0;
+1855: r = np.zeros(p, dtype=np.float64)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyDict_New(); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_25, __pyx_n_s_dtype, __pyx_t_23) < 0) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_7, __pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1855, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1855, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_v_r, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1855, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_r, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0;
+1856: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_24 = 1; } } __pyx_t_5 = PyTuple_New(4+__pyx_t_24); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_24, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_24, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_24, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_24, __pyx_t_1); __pyx_t_25 = 0; __pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_23))) || (PyList_CheckExact(__pyx_t_23))) { PyObject* sequence = __pyx_t_23; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1856, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } else { Py_ssize_t index = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_23); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1856, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_1)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L86_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L86_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1856, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L87_unpacking_done; __pyx_L86_unpacking_failed:; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1856, __pyx_L1_error) __pyx_L87_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1856, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1856, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1856, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 1856, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+1857: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
1858:
+1859: toc = time.time()
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1859, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1859, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_23); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1859, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_toc = __pyx_t_20;
+1860: obj.exetime = toc - tic
__pyx_t_23 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_23) < 0) __PYX_ERR(0, 1860, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
+1861: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 1861, __pyx_L1_error)
+1862: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 1862, __pyx_L1_error)
+1863: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 1863, __pyx_L1_error)
+1864: obj.gr2DVal = gr2DVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_gr2DVal, ((PyObject *)__pyx_v_gr2DVal)) < 0) __PYX_ERR(0, 1864, __pyx_L1_error)
+1865: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 1865, __pyx_L1_error)
+1866: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
1867:
1868:
+1869: def Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_21Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_21Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D = {"Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_21Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_21Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_20Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_20Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_rad;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_48);
__Pyx_XDECREF(__pyx_t_167);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__31 = PyTuple_Pack(54, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_r, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(0, 1869, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__31);
__Pyx_GIVEREF(__pyx_tuple__31);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_21Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_without_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1869, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous, __pyx_t_2) < 0) __PYX_ERR(0, 1869, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__32 = (PyObject*)__Pyx_PyCode_New(1, 0, 54, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__31, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous, 1869, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__32)) __PYX_ERR(0, 1869, __pyx_L1_error)
1870: # Grabbing data from the input object
+1871: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1871, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1871, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+1872: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1872, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1872, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+1873: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1873, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+1874: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1874, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1874, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+1875: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1875, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 1875, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+1876: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+1877: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1877, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1877, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+1878: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1878, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1878, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+1879: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1879, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+1880: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1880, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+1881: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1881, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+1882: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1882, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+1883: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1883, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
1884:
1885: # Declaring other variables
1886: cdef double tic, toc
1887: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, Iter
1888: cdef float dt, f, t, dr, tmp, red, green, blue
+1889: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1889, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1889, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1889, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+1890: cdef np.ndarray[np.int8_t, ndim = 1] a = np.zeros(MN, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1890, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1890, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1890, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1891: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1891, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1891, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1891, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+1892: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1892, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1892, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1892, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1893: cdef np.ndarray[np.int64_t, ndim = 1] r = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1893, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1893, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1893, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+1894: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1894, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1894, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1894, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+1895: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1895, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1895, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1895, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+1896: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1896, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1896, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1896, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_16 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+1897: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1897, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1897, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 1897, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_17 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+1898: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1898, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1898, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1898, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1898, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1898, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+1899: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1899, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1899, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1899, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+1900: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1900, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1900, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1900, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_tic = __pyx_t_21;
1901:
+1902: t = 0
__pyx_v_t = 0.0;
+1903: p = 0
__pyx_v_p = 0;
+1904: dp = 0
__pyx_v_dp = 0;
+1905: countim = 0
__pyx_v_countim = 0;
+1906: nnz = 0
__pyx_v_nnz = 0;
+1907: Iter = 1
__pyx_v_Iter = 1;
+1908: while nnz < MN:
while (1) {
__pyx_t_22 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_22) break;
+1909: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+1910: dt = 1.0 / Gt(t)
__pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1910, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_5, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 1910, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+1911: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_8 = __pyx_v_Ndot; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_23 = PyTuple_New(1+1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_23, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyNumber_Multiply(__pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1911, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_dp = __pyx_t_2;
+1912: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+1913: if pdelNxy == []:
__pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1913, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_22 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_22 < 0)) __PYX_ERR(0, 1913, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_22) { /* … */ goto __pyx_L5; }
+1914: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L7_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+1915: count = 0
__pyx_v_count = 0;
+1916: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+1917: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1917, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1917, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1917, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1917, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_23 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_25 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1917, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_23) { __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_23); __pyx_t_23 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_25, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1917, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1917, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+1918: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1918, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1918, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1918, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1918, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_25 = 1; } } __pyx_t_23 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1918, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_25, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_23, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1918, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 1918, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+1919: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_26 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_26, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
}
+1920: I[xt, yt] = p + count + 1
__pyx_t_27 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+1921: X[p + count] = xt
__pyx_t_29 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+1922: Y[p + count] = yt
__pyx_t_30 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+1923: a[p + count] = 1
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+1924: r[p + count] = 1
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_r.diminfo[0].strides) = 1;
+1925: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_xt;
__pyx_t_36 = __pyx_v_yt;
__pyx_t_37 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+1926: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_38 = (__pyx_v_p + __pyx_v_count);
__pyx_t_39 = 1;
__pyx_t_40 = __pyx_v_xt;
__pyx_t_41 = __pyx_v_yt;
__pyx_t_42 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_39, __pyx_pybuffernd_col.diminfo[1].strides));
+1927: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_43 = (__pyx_v_p + __pyx_v_count);
__pyx_t_44 = 2;
__pyx_t_45 = __pyx_v_xt;
__pyx_t_46 = __pyx_v_yt;
__pyx_t_47 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
+1928: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+1929: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
1930: else:
+1931: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L14_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
}
__pyx_L5:;
+1932: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_48 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_48, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_48, 0+__pyx_t_25, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 1+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_48, 2+__pyx_t_25, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 3+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_48, 4+__pyx_t_25, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_48, 5+__pyx_t_25, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_48, 6+__pyx_t_25, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_48, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 1932, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_48 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_48 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_48); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_48 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_49 = Py_TYPE(__pyx_t_8)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_8); if (unlikely(!__pyx_t_23)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_48 = __pyx_t_49(__pyx_t_8); if (unlikely(!__pyx_t_48)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_48); if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_8), 2) < 0) __PYX_ERR(0, 1932, __pyx_L1_error) __pyx_t_49 = NULL; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_49 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 1932, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1932, __pyx_L1_error) if (!(likely(((__pyx_t_48) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_48, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1932, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1932, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_15 = ((PyArrayObject *)__pyx_t_48); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1932, __pyx_L1_error) } __pyx_t_15 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_48)); __pyx_t_48 = 0;
+1933: w = 0
__pyx_v_w = 0;
+1934: count = 0
__pyx_v_count = 0;
+1935: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+1936: xt = xtrial[w]
__pyx_t_50 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+1937: yt = ytrial[w]
__pyx_t_51 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+1938: if I[xt, yt] == 0:
__pyx_t_52 = __pyx_v_xt;
__pyx_t_53 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_53, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+1939: I[xt, yt] = p + count + 1
__pyx_t_54 = __pyx_v_xt;
__pyx_t_55 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+1940: X[p + count] = xt
__pyx_t_56 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+1941: Y[p + count] = yt
__pyx_t_57 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+1942: a[p + count] = 1
__pyx_t_58 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+1943: r[p + count] = 1
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_r.diminfo[0].strides) = 1;
+1944: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
__pyx_t_61 = 0;
__pyx_t_62 = __pyx_v_xt;
__pyx_t_63 = __pyx_v_yt;
__pyx_t_64 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_64, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_61, __pyx_pybuffernd_col.diminfo[1].strides));
+1945: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_65 = (__pyx_v_p + __pyx_v_count);
__pyx_t_66 = 1;
__pyx_t_67 = __pyx_v_xt;
__pyx_t_68 = __pyx_v_yt;
__pyx_t_69 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_69, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_col.diminfo[1].strides));
+1946: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_70 = (__pyx_v_p + __pyx_v_count);
__pyx_t_71 = 2;
__pyx_t_72 = __pyx_v_xt;
__pyx_t_73 = __pyx_v_yt;
__pyx_t_74 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_col.diminfo[1].strides));
+1947: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+1948: if w < dp - 1:
__pyx_t_22 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L22;
}
+1949: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
1950: else:
+1951: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_48 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_48, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0;
__pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_5 = NULL;
__pyx_t_25 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
__pyx_t_25 = 1;
}
}
__pyx_t_7 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_25, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_48);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_25, __pyx_t_48);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_25, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_7, 5+__pyx_t_25, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_7, 6+__pyx_t_25, __pyx_int_1);
__pyx_t_48 = 0;
__pyx_t_8 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 1951, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_23 = PyList_GET_ITEM(sequence, 0);
__pyx_t_7 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(__pyx_t_7);
#else
__pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1951, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_49 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_1); if (unlikely(!__pyx_t_23)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
index = 1; __pyx_t_7 = __pyx_t_49(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_1), 2) < 0) __PYX_ERR(0, 1951, __pyx_L1_error)
__pyx_t_49 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_49 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 1951, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1951, __pyx_L1_error)
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 1951, __pyx_L1_error)
__pyx_t_14 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1951, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
__pyx_t_15 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 1951, __pyx_L1_error)
}
__pyx_t_15 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
+1952: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+1953: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
1954:
+1955: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+1956: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
1957:
+1958: for k in range(0, p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_k = __pyx_t_76;
+1959: if a[k] == 1:
__pyx_t_77 = __pyx_v_k;
__pyx_t_22 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_22) {
/* … */
}
}
+1960: a[k] = 0
__pyx_t_78 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+1961: xo = X[k]
__pyx_t_79 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_X.diminfo[0].strides));
+1962: yo = Y[k]
__pyx_t_80 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Y.diminfo[0].strides));
+1963: Io = I[xo, yo]
__pyx_t_81 = __pyx_v_xo;
__pyx_t_82 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_I.diminfo[1].strides));
+1964: rad = r[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_r.diminfo[0].strides));
+1965: red = col[k, 0]
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_85, __pyx_pybuffernd_col.diminfo[1].strides));
+1966: green = col[k, 1]
__pyx_t_86 = __pyx_v_k;
__pyx_t_87 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_col.diminfo[1].strides));
+1967: blue = col[k, 2]
__pyx_t_88 = __pyx_v_k;
__pyx_t_89 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_col.diminfo[1].strides));
1968:
+1969: for deli in range(rad + 1):
__pyx_t_90 = (__pyx_v_rad + 1);
for (__pyx_t_91 = 0; __pyx_t_91 < __pyx_t_90; __pyx_t_91+=1) {
__pyx_v_deli = __pyx_t_91;
+1970: for delj in range(rad + 1):
__pyx_t_92 = (__pyx_v_rad + 1);
for (__pyx_t_93 = 0; __pyx_t_93 < __pyx_t_92; __pyx_t_93+=1) {
__pyx_v_delj = __pyx_t_93;
+1971: if deli + delj <= rad:
__pyx_t_22 = (((__pyx_v_deli + __pyx_v_delj) <= __pyx_v_rad) != 0);
if (__pyx_t_22) {
/* … */
}
}
}
+1972: i, j = xo + deli, yo + delj
__pyx_t_94 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_95 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_94;
__pyx_v_j = __pyx_t_95;
+1973: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L34_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L34_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+1974: if I[i, j] == 0:
__pyx_t_95 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+1975: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L37;
}
+1976: PN = I[i - 1, j]
__pyx_t_97 = (__pyx_v_i - 1);
__pyx_t_98 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_98, __pyx_pybuffernd_I.diminfo[1].strides));
1977: else:
+1978: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L37:;
+1979: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L38;
}
+1980: PW = I[i, j - 1]
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_I.diminfo[1].strides));
1981: else:
+1982: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L38:;
+1983: if PN == Io or PW == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L40_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+1984: I[i, j] = Io
__pyx_t_101 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+1985: Col[i, j, 2] = red
__pyx_t_103 = __pyx_v_i;
__pyx_t_104 = __pyx_v_j;
__pyx_t_105 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+1986: Col[i, j, 1] = green
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = __pyx_v_j;
__pyx_t_108 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+1987: Col[i, j, 0] = blue
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = __pyx_v_j;
__pyx_t_111 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+1988: a[k] = 1
__pyx_t_112 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
1989:
+1990: i, j = xo - deli, yo + delj
__pyx_t_113 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_114 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_113;
__pyx_v_j = __pyx_t_114;
+1991: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L43_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L43_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+1992: if I[i, j] == 0:
__pyx_t_114 = __pyx_v_i;
__pyx_t_113 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+1993: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L46;
}
+1994: PS = I[i + 1, j]
__pyx_t_115 = (__pyx_v_i + 1);
__pyx_t_116 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides));
1995: else:
+1996: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L46:;
+1997: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L47;
}
+1998: PW = I[i, j - 1]
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides));
1999: else:
+2000: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L47:;
+2001: if PW == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L49_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L49_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2002: I[i, j] = Io
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2003: Col[i, j, 2] = red
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2004: Col[i, j, 1] = green
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_126 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2005: Col[i, j, 0] = blue
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
__pyx_t_129 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2006: a[k] = 1
__pyx_t_130 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2007:
+2008: i, j = xo - deli, yo - delj
__pyx_t_131 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_132 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_131;
__pyx_v_j = __pyx_t_132;
+2009: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L52_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L52_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2010: if I[i, j] == 0:
__pyx_t_132 = __pyx_v_i;
__pyx_t_131 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+2011: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L55;
}
+2012: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
2013: else:
+2014: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L55:;
+2015: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L56;
}
+2016: PE = I[i, j + 1]
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides));
2017: else:
+2018: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L56:;
+2019: if PE == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L58_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L58_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2020: I[i, j] = Io
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2021: Col[i, j, 2] = red
__pyx_t_139 = __pyx_v_i;
__pyx_t_140 = __pyx_v_j;
__pyx_t_141 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2022: Col[i, j, 1] = green
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = __pyx_v_j;
__pyx_t_144 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2023: Col[i, j, 0] = blue
__pyx_t_145 = __pyx_v_i;
__pyx_t_146 = __pyx_v_j;
__pyx_t_147 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2024: a[k] = 1
__pyx_t_148 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2025:
+2026: i, j = xo + deli, yo - delj
__pyx_t_149 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_150 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_149;
__pyx_v_j = __pyx_t_150;
+2027: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L61_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2028: if I[i, j] == 0:
__pyx_t_150 = __pyx_v_i;
__pyx_t_149 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_149, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+2029: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L64;
}
+2030: PN = I[i - 1, j]
__pyx_t_151 = (__pyx_v_i - 1);
__pyx_t_152 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
2031: else:
+2032: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L64:;
+2033: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L65;
}
+2034: PE = I[i, j + 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
2035: else:
+2036: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L65:;
+2037: if PN == Io or PE == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L67_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L67_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2038: I[i, j] = Io
__pyx_t_155 = __pyx_v_i;
__pyx_t_156 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2039: Col[i, j, 2] = red
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_159 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2040: Col[i, j, 1] = green
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = __pyx_v_j;
__pyx_t_162 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2041: Col[i, j, 0] = blue
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
__pyx_t_165 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2042: a[k] = 1
__pyx_t_166 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2043:
+2044: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2045: for i in range(p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_i = __pyx_t_76;
+2046: r[i] = r[i] + 1
__pyx_t_90 = __pyx_v_i;
__pyx_t_91 = __pyx_v_i;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_r.diminfo[0].strides)) + 1);
}
+2047: nnz = cv2.countNonZero(I)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2047, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2047, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); } } if (!__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2047, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2047, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2047, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_75 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_75 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2047, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_nnz = __pyx_t_75; }
2048:
+2049: obj.p = p
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2049, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_6) < 0) __PYX_ERR(0, 2049, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2050: toc = time.time()
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2050, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2050, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (__pyx_t_23) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_23); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2050, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } else { __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2050, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2050, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_toc = __pyx_t_21;
+2051: obj.exetime = toc - tic
__pyx_t_6 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2051, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_6) < 0) __PYX_ERR(0, 2051, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2052: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_delete); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_5 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_167 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_167, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_167, 0+__pyx_t_25, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_167, 1+__pyx_t_25, __pyx_t_48); __pyx_t_7 = 0; __pyx_t_48 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_167, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_167 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_167, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_167, 0+__pyx_t_25, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_167, 1+__pyx_t_25, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_167, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_6) < 0) __PYX_ERR(0, 2052, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2053: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_167 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_delete); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_7 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_25, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_25, __pyx_t_48); __pyx_t_1 = 0; __pyx_t_48 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_5, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_167))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_167); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_167); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_167, function); __pyx_t_25 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_25, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_25, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_167, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_6) < 0) __PYX_ERR(0, 2053, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2054: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 2054, __pyx_L1_error)
+2055: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 2055, __pyx_L1_error)
+2056: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
2057:
2058:
+2059: def Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_23Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_23Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D = {"Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_23Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_23Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_22Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_22Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_rad;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_48);
__Pyx_XDECREF(__pyx_t_167);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__33 = PyTuple_Pack(54, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_r, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 2059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__33);
__Pyx_GIVEREF(__pyx_tuple__33);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_23Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_without_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2059, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_2, __pyx_t_2) < 0) __PYX_ERR(0, 2059, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__34 = (PyObject*)__Pyx_PyCode_New(1, 0, 54, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__33, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_2, 2059, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__34)) __PYX_ERR(0, 2059, __pyx_L1_error)
2060: # Grabbing data from the input object
+2061: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2061, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+2062: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2062, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+2063: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2063, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+2064: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2064, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+2065: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 2065, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+2066: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+2067: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2067, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2067, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+2068: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2068, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+2069: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+2070: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2070, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+2071: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2071, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+2072: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2072, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+2073: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2073, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
2074:
2075: # Declaring other variables
2076: cdef double tic, toc
2077: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, Iter
2078: cdef float dt, f, t, dr, tmp, red, green, blue
+2079: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2079, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2079, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2080: cdef np.ndarray[np.int8_t, ndim = 1] a = np.zeros(MN, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2080, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2080, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2081: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2081, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2081, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2081, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2082: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2082, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2082, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2083: cdef np.ndarray[np.int64_t, ndim = 1] r = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2083, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2083, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2083, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2084: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2084, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2084, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2084, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2085: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2085, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2085, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2085, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2086: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2086, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2086, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_16 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2087: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2087, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2087, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_17 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2088: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2088, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2088, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2088, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2088, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2088, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+2089: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2089, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2089, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2089, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+2090: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2090, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2090, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2090, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2090, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2090, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_tic = __pyx_t_21;
2091:
2092:
+2093: t = 0
__pyx_v_t = 0.0;
+2094: p = 0
__pyx_v_p = 0;
+2095: dp = 0
__pyx_v_dp = 0;
+2096: countim = 0
__pyx_v_countim = 0;
+2097: nnz = 0
__pyx_v_nnz = 0;
2098:
+2099: Iter = 1
__pyx_v_Iter = 1;
+2100: while nnz < MN:
while (1) {
__pyx_t_22 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_22) break;
+2101: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+2102: dt = 1.0 / Gt(t)
__pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2102, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_5, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 2102, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+2103: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_8 = __pyx_v_Ndot; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_23 = PyTuple_New(1+1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_23, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyNumber_Multiply(__pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2103, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_dp = __pyx_t_2;
+2104: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+2105: if pdelNxy == []:
__pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2105, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2105, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_22 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_22 < 0)) __PYX_ERR(0, 2105, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_22) { /* … */ goto __pyx_L5; }
+2106: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L7_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2107: count = 0
__pyx_v_count = 0;
+2108: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+2109: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_23 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_25 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_23) { __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_23); __pyx_t_23 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_25, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2109, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+2110: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_25 = 1; } } __pyx_t_23 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_25, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_23, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2110, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+2111: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_26 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_26, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
}
+2112: I[xt, yt] = p + count + 1
__pyx_t_27 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+2113: X[p + count] = xt
__pyx_t_29 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+2114: Y[p + count] = yt
__pyx_t_30 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+2115: a[p + count] = 1
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2116: r[p + count] = 1
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_r.diminfo[0].strides) = 1;
+2117: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_xt;
__pyx_t_36 = __pyx_v_yt;
__pyx_t_37 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+2118: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_38 = (__pyx_v_p + __pyx_v_count);
__pyx_t_39 = 1;
__pyx_t_40 = __pyx_v_xt;
__pyx_t_41 = __pyx_v_yt;
__pyx_t_42 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_39, __pyx_pybuffernd_col.diminfo[1].strides));
+2119: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_43 = (__pyx_v_p + __pyx_v_count);
__pyx_t_44 = 2;
__pyx_t_45 = __pyx_v_xt;
__pyx_t_46 = __pyx_v_yt;
__pyx_t_47 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
+2120: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+2121: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
2122: else:
+2123: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L14_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
}
__pyx_L5:;
+2124: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_48 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_48, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_48, 0+__pyx_t_25, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 1+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_48, 2+__pyx_t_25, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 3+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_48, 4+__pyx_t_25, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_48, 5+__pyx_t_25, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_48, 6+__pyx_t_25, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_48, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 2124, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_48 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_48 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_48); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_48 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_49 = Py_TYPE(__pyx_t_8)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_8); if (unlikely(!__pyx_t_23)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_48 = __pyx_t_49(__pyx_t_8); if (unlikely(!__pyx_t_48)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_48); if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_8), 2) < 0) __PYX_ERR(0, 2124, __pyx_L1_error) __pyx_t_49 = NULL; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_49 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 2124, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2124, __pyx_L1_error) if (!(likely(((__pyx_t_48) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_48, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2124, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2124, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_15 = ((PyArrayObject *)__pyx_t_48); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2124, __pyx_L1_error) } __pyx_t_15 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_48)); __pyx_t_48 = 0;
+2125: w = 0
__pyx_v_w = 0;
+2126: count = 0
__pyx_v_count = 0;
+2127: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+2128: xt = xtrial[w]
__pyx_t_50 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+2129: yt = ytrial[w]
__pyx_t_51 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+2130: if I[xt, yt] == 0:
__pyx_t_52 = __pyx_v_xt;
__pyx_t_53 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_53, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+2131: I[xt, yt] = p + count + 1
__pyx_t_54 = __pyx_v_xt;
__pyx_t_55 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+2132: X[p + count] = xt
__pyx_t_56 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+2133: Y[p + count] = yt
__pyx_t_57 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+2134: a[p + count] = 1
__pyx_t_58 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2135: r[p + count] = 1
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_r.diminfo[0].strides) = 1;
+2136: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
__pyx_t_61 = 0;
__pyx_t_62 = __pyx_v_xt;
__pyx_t_63 = __pyx_v_yt;
__pyx_t_64 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_64, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_61, __pyx_pybuffernd_col.diminfo[1].strides));
+2137: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_65 = (__pyx_v_p + __pyx_v_count);
__pyx_t_66 = 1;
__pyx_t_67 = __pyx_v_xt;
__pyx_t_68 = __pyx_v_yt;
__pyx_t_69 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_69, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_col.diminfo[1].strides));
+2138: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_70 = (__pyx_v_p + __pyx_v_count);
__pyx_t_71 = 2;
__pyx_t_72 = __pyx_v_xt;
__pyx_t_73 = __pyx_v_yt;
__pyx_t_74 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_col.diminfo[1].strides));
+2139: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+2140: if w < dp - 1:
__pyx_t_22 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L22;
}
+2141: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
2142: else:
+2143: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_48 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_48, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0;
__pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_5 = NULL;
__pyx_t_25 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
__pyx_t_25 = 1;
}
}
__pyx_t_7 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_25, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_48);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_25, __pyx_t_48);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_25, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_7, 5+__pyx_t_25, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_7, 6+__pyx_t_25, __pyx_int_1);
__pyx_t_48 = 0;
__pyx_t_8 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 2143, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_23 = PyList_GET_ITEM(sequence, 0);
__pyx_t_7 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(__pyx_t_7);
#else
__pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2143, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_49 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_1); if (unlikely(!__pyx_t_23)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
index = 1; __pyx_t_7 = __pyx_t_49(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_1), 2) < 0) __PYX_ERR(0, 2143, __pyx_L1_error)
__pyx_t_49 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_49 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 2143, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2143, __pyx_L1_error)
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2143, __pyx_L1_error)
__pyx_t_14 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2143, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
__pyx_t_15 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2143, __pyx_L1_error)
}
__pyx_t_15 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
+2144: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+2145: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
2146:
+2147: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2148: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
2149:
+2150: for k in range(0, p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_k = __pyx_t_76;
+2151: if a[k] == 1:
__pyx_t_77 = __pyx_v_k;
__pyx_t_22 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_22) {
/* … */
}
}
+2152: a[k] = 0
__pyx_t_78 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+2153: xo = X[k]
__pyx_t_79 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_X.diminfo[0].strides));
+2154: yo = Y[k]
__pyx_t_80 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Y.diminfo[0].strides));
+2155: Io = I[xo, yo]
__pyx_t_81 = __pyx_v_xo;
__pyx_t_82 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_I.diminfo[1].strides));
+2156: rad = r[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_r.diminfo[0].strides));
+2157: red = col[k, 0]
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_85, __pyx_pybuffernd_col.diminfo[1].strides));
+2158: green = col[k, 1]
__pyx_t_86 = __pyx_v_k;
__pyx_t_87 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_col.diminfo[1].strides));
+2159: blue = col[k, 2]
__pyx_t_88 = __pyx_v_k;
__pyx_t_89 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_col.diminfo[1].strides));
2160:
+2161: for deli in range(rad + 1):
__pyx_t_90 = (__pyx_v_rad + 1);
for (__pyx_t_91 = 0; __pyx_t_91 < __pyx_t_90; __pyx_t_91+=1) {
__pyx_v_deli = __pyx_t_91;
+2162: for delj in range(rad + 1):
__pyx_t_92 = (__pyx_v_rad + 1);
for (__pyx_t_93 = 0; __pyx_t_93 < __pyx_t_92; __pyx_t_93+=1) {
__pyx_v_delj = __pyx_t_93;
+2163: if deli <= rad and delj <= rad:
__pyx_t_24 = ((__pyx_v_deli <= __pyx_v_rad) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L33_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_delj <= __pyx_v_rad) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L33_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
}
}
+2164: i, j = xo + deli, yo + delj
__pyx_t_94 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_95 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_94;
__pyx_v_j = __pyx_t_95;
+2165: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L36_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L36_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2166: if I[i, j] == 0:
__pyx_t_95 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+2167: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L39;
}
+2168: PN = I[i - 1, j]
__pyx_t_97 = (__pyx_v_i - 1);
__pyx_t_98 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_98, __pyx_pybuffernd_I.diminfo[1].strides));
2169: else:
+2170: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L39:;
+2171: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L40;
}
+2172: PW = I[i, j - 1]
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_I.diminfo[1].strides));
2173: else:
+2174: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L40:;
+2175: if PN == Io or PW == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L42_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L42_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2176: I[i, j] = Io
__pyx_t_101 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2177: Col[i, j, 2] = red
__pyx_t_103 = __pyx_v_i;
__pyx_t_104 = __pyx_v_j;
__pyx_t_105 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2178: Col[i, j, 1] = green
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = __pyx_v_j;
__pyx_t_108 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2179: Col[i, j, 0] = blue
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = __pyx_v_j;
__pyx_t_111 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2180: a[k] = 1
__pyx_t_112 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2181:
+2182: i, j = xo - deli, yo + delj
__pyx_t_113 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_114 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_113;
__pyx_v_j = __pyx_t_114;
+2183: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L45_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L45_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2184: if I[i, j] == 0:
__pyx_t_114 = __pyx_v_i;
__pyx_t_113 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+2185: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L48;
}
+2186: PS = I[i + 1, j]
__pyx_t_115 = (__pyx_v_i + 1);
__pyx_t_116 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides));
2187: else:
+2188: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L48:;
+2189: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L49;
}
+2190: PW = I[i, j - 1]
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides));
2191: else:
+2192: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L49:;
+2193: if PW == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L51_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2194: I[i, j] = Io
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2195: Col[i, j, 2] = red
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2196: Col[i, j, 1] = green
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_126 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2197: Col[i, j, 0] = blue
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
__pyx_t_129 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2198: a[k] = 1
__pyx_t_130 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2199:
+2200: i, j = xo - deli, yo - delj
__pyx_t_131 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_132 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_131;
__pyx_v_j = __pyx_t_132;
+2201: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L54_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L54_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2202: if I[i, j] == 0:
__pyx_t_132 = __pyx_v_i;
__pyx_t_131 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+2203: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L57;
}
+2204: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
2205: else:
+2206: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L57:;
+2207: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L58;
}
+2208: PE = I[i, j + 1]
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides));
2209: else:
+2210: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L58:;
+2211: if PE == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L60_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L60_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2212: I[i, j] = Io
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2213: Col[i, j, 2] = red
__pyx_t_139 = __pyx_v_i;
__pyx_t_140 = __pyx_v_j;
__pyx_t_141 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2214: Col[i, j, 1] = green
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = __pyx_v_j;
__pyx_t_144 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2215: Col[i, j, 0] = blue
__pyx_t_145 = __pyx_v_i;
__pyx_t_146 = __pyx_v_j;
__pyx_t_147 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2216: a[k] = 1
__pyx_t_148 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2217:
+2218: i, j = xo + deli, yo - delj
__pyx_t_149 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_150 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_149;
__pyx_v_j = __pyx_t_150;
+2219: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L63_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L63_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2220: if I[i, j] == 0:
__pyx_t_150 = __pyx_v_i;
__pyx_t_149 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_149, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+2221: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L66;
}
+2222: PN = I[i - 1, j]
__pyx_t_151 = (__pyx_v_i - 1);
__pyx_t_152 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
2223: else:
+2224: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L66:;
+2225: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L67;
}
+2226: PE = I[i, j + 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
2227: else:
+2228: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L67:;
+2229: if PN == Io or PE == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L69_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L69_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+2230: I[i, j] = Io
__pyx_t_155 = __pyx_v_i;
__pyx_t_156 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2231: Col[i, j, 2] = red
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_159 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2232: Col[i, j, 1] = green
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = __pyx_v_j;
__pyx_t_162 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2233: Col[i, j, 0] = blue
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
__pyx_t_165 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2234: a[k] = 1
__pyx_t_166 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2235:
+2236: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2237: for i in range(p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_i = __pyx_t_76;
+2238: r[i] = r[i] + 1
__pyx_t_90 = __pyx_v_i;
__pyx_t_91 = __pyx_v_i;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_r.diminfo[0].strides)) + 1);
}
+2239: nnz = cv2.countNonZero(I)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); } } if (!__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_75 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_75 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2239, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_nnz = __pyx_t_75; }
2240:
+2241: obj.p = p
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2241, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_6) < 0) __PYX_ERR(0, 2241, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2242: toc = time.time()
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2242, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2242, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (__pyx_t_23) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_23); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2242, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } else { __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2242, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2242, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_toc = __pyx_t_21;
+2243: obj.exetime = toc - tic
__pyx_t_6 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2243, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_6) < 0) __PYX_ERR(0, 2243, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2244: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_delete); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_5 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_167 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_167, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_167, 0+__pyx_t_25, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_167, 1+__pyx_t_25, __pyx_t_48); __pyx_t_7 = 0; __pyx_t_48 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_167, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_167 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_167, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_167, 0+__pyx_t_25, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_167, 1+__pyx_t_25, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_167, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_6) < 0) __PYX_ERR(0, 2244, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2245: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_167 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_delete); if (unlikely(!__pyx_t_167)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_167); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_7 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_25, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_25, __pyx_t_48); __pyx_t_1 = 0; __pyx_t_48 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_5, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_167))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_167); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_167); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_167, function); __pyx_t_25 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_25, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_25, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_167, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_167); __pyx_t_167 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_6) < 0) __PYX_ERR(0, 2245, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+2246: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 2246, __pyx_L1_error)
+2247: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 2247, __pyx_L1_error)
+2248: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
2249:
2250:
+2251: def Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_25Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_25Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D = {"Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_25Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_25Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_24Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_24Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_gr2D = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_rmax;
PY_LONG_LONG __pyx_v_win;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_gr2DValmax;
float __pyx_v_dr;
float __pyx_v_rad;
float __pyx_v_tmp;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_gr2DVal = 0;
CYTHON_UNUSED PyArrayObject *__pyx_v_rold = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_gr2DVal;
__Pyx_Buffer __pyx_pybuffer_gr2DVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
__Pyx_LocalBuf_ND __pyx_pybuffernd_rold;
__Pyx_Buffer __pyx_pybuffer_rold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_gr2DVal.pybuffer.buf = NULL;
__pyx_pybuffer_gr2DVal.refcount = 0;
__pyx_pybuffernd_gr2DVal.data = NULL;
__pyx_pybuffernd_gr2DVal.rcbuffer = &__pyx_pybuffer_gr2DVal;
__pyx_pybuffer_rold.pybuffer.buf = NULL;
__pyx_pybuffer_rold.refcount = 0;
__pyx_pybuffernd_rold.data = NULL;
__pyx_pybuffernd_rold.rcbuffer = &__pyx_pybuffer_rold;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_34);
__Pyx_XDECREF(__pyx_t_192);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_rold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_rold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_gr2D);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_gr2DVal);
__Pyx_XDECREF((PyObject *)__pyx_v_rold);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__35 = PyTuple_Pack(64, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_gr2D, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_countim, __pyx_n_s_rmax, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_w, __pyx_n_s_Iter, __pyx_n_s_gr2DValmax, __pyx_n_s_dr, __pyx_n_s_rad, __pyx_n_s_tmp, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_r, __pyx_n_s_gr2DVal, __pyx_n_s_rold, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 2251, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__35);
__Pyx_GIVEREF(__pyx_tuple__35);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_25Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N4_with_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2251, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_3, __pyx_t_2) < 0) __PYX_ERR(0, 2251, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__36 = (PyObject*)__Pyx_PyCode_New(1, 0, 64, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__35, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_3, 2251, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__36)) __PYX_ERR(0, 2251, __pyx_L1_error)
2252:
2253: # Grabbing data from the input object
+2254: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2254, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+2255: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2255, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2255, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+2256: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2256, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+2257: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2257, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2257, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+2258: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2258, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 2258, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+2259: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+2260: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2260, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2260, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+2261: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2261, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2261, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+2262: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+2263: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+2264: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+2265: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+2266: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+2267: gr2D = obj.gr2D
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_gr2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_gr2D = __pyx_t_1; __pyx_t_1 = 0;
2268:
2269: # Declaring other variables
2270: cdef double tic, toc
2271: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, xt, yt, dp, nnz, countim, rmax, win, xmin, xmax, ymin, ymax, i, j, k, xo, yo, w, Iter
2272: cdef float gr2DValmax, dr, rad, tmp, dt, f, t, red, green, blue
+2273: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2273, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2273, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2274: cdef np.ndarray[np.int8_t, ndim = 1] a = np.zeros(MN, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2274, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2274, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2275: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2275, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2275, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2276: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2276, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2276, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2276, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2277: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2277, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2277, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2278: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2278, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2278, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2279: cdef np.ndarray[np.float64_t, ndim = 1] r = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2279, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2279, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2279, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2280: cdef np.ndarray[np.float64_t, ndim = 1] gr2DVal = np.zeros(MN, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2280, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2280, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_gr2DVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2280, __pyx_L1_error) } else {__pyx_pybuffernd_gr2DVal.diminfo[0].strides = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_gr2DVal.diminfo[0].shape = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_gr2DVal = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2281: cdef np.ndarray[np.float64_t, ndim = 1] rold = np.zeros(MN, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2281, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_rold.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_rold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_rold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2281, __pyx_L1_error) } else {__pyx_pybuffernd_rold.diminfo[0].strides = __pyx_pybuffernd_rold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_rold.diminfo[0].shape = __pyx_pybuffernd_rold.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_rold = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2282: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2282, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2282, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_18 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2283: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2283, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2283, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_19 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2284: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2284, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+2285: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2285, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2285, __pyx_L1_error) } __pyx_t_19 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+2286: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (__pyx_t_6) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2286, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_8 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2286, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2286, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_tic = __pyx_t_23;
2287:
2288:
2289:
+2290: t = 0
__pyx_v_t = 0.0;
+2291: p = 0
__pyx_v_p = 0;
+2292: dp = 0
__pyx_v_dp = 0;
+2293: countim = 0
__pyx_v_countim = 0;
+2294: nnz = cv2.countNonZero(I)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_8); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2294, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_nnz = __pyx_t_2;
+2295: Iter = 1
__pyx_v_Iter = 1;
+2296: while nnz < MN:
while (1) {
__pyx_t_24 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_24) break;
+2297: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+2298: dt = 1.0 / Gt(t)
__pyx_t_6 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_1 = __pyx_v_Gt; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2298, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_8, 1.0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 2298, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_dt = __pyx_t_3;
+2299: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_1 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_6 = __pyx_v_Ndot; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_25, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Multiply(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = PyNumber_Multiply(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyNumber_Int(__pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_8); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2299, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_dp = __pyx_t_2;
+2300: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+2301: if pdelNxy == []:
__pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2301, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_24 < 0)) __PYX_ERR(0, 2301, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_24) { /* … */ goto __pyx_L5; }
+2302: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L7_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2303: count = 0
__pyx_v_count = 0;
+2304: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+2305: xt = np.random.randint(0, m - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_7 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_27, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2305, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_xt = __pyx_t_2;
+2306: yt = np.random.randint(0, n - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2306, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2306, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2306, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2306, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2306, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2306, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2306, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_yt = __pyx_t_2;
+2307: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+2308: I[xt, yt] = p + count + 1
__pyx_t_29 = __pyx_v_xt;
__pyx_t_30 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+2309: X[p + count] = xt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+2310: Y[p + count] = yt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+2311: a[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2312: gr2DVal[p + count] = gr2D(xt, yt, p + count + 1)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_gr2D); __pyx_t_6 = __pyx_v_gr2D; __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_27 = 1; } } __pyx_t_34 = PyTuple_New(3+__pyx_t_27); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_34, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_34, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_34, 2+__pyx_t_27, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_25 = 0; __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_34, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2312, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 2312, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_36 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_35;
+2313: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_37 = (__pyx_v_p + __pyx_v_count);
__pyx_t_38 = 0;
__pyx_t_39 = __pyx_v_xt;
__pyx_t_40 = __pyx_v_yt;
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_col.diminfo[1].strides));
+2314: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_42 = (__pyx_v_p + __pyx_v_count);
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_xt;
__pyx_t_45 = __pyx_v_yt;
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+2315: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_47 = (__pyx_v_p + __pyx_v_count);
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_xt;
__pyx_t_50 = __pyx_v_yt;
__pyx_t_51 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+2316: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+2317: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
2318: else:
+2319: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L14_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
}
__pyx_L5:;
+2320: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_27, __pyx_t_6); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 5+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 6+__pyx_t_27, __pyx_int_1); __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 2320, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_34 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_34 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_34 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_25 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_52 = Py_TYPE(__pyx_t_25)->tp_iternext; index = 0; __pyx_t_34 = __pyx_t_52(__pyx_t_25); if (unlikely(!__pyx_t_34)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_34); index = 1; __pyx_t_5 = __pyx_t_52(__pyx_t_25); if (unlikely(!__pyx_t_5)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_25), 2) < 0) __PYX_ERR(0, 2320, __pyx_L1_error) __pyx_t_52 = NULL; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_52 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 2320, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_34) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_34, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2320, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2320, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_34); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2320, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_34)); __pyx_t_34 = 0; __pyx_t_14 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2320, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+2321: w = 0
__pyx_v_w = 0;
+2322: count = 0
__pyx_v_count = 0;
+2323: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+2324: xt = xtrial[w]
__pyx_t_53 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+2325: yt = ytrial[w]
__pyx_t_54 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+2326: if I[xt, yt] == 0:
__pyx_t_55 = __pyx_v_xt;
__pyx_t_56 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_56, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2327: I[xt, yt] = p + count + 1
__pyx_t_57 = __pyx_v_xt;
__pyx_t_58 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_58, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+2328: X[p + count] = xt
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+2329: Y[p + count] = yt
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+2330: a[p + count] = 1
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2331: gr2DVal[p + count] = gr2D(xt, yt, p + count + 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_gr2D); __pyx_t_7 = __pyx_v_gr2D; __pyx_t_6 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(3+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_t_34); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_25); __pyx_t_5 = 0; __pyx_t_34 = 0; __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 2331, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_62 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_35;
+2332: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_63 = (__pyx_v_p + __pyx_v_count);
__pyx_t_64 = 0;
__pyx_t_65 = __pyx_v_xt;
__pyx_t_66 = __pyx_v_yt;
__pyx_t_67 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_col.diminfo[1].strides));
+2333: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_68 = (__pyx_v_p + __pyx_v_count);
__pyx_t_69 = 1;
__pyx_t_70 = __pyx_v_xt;
__pyx_t_71 = __pyx_v_yt;
__pyx_t_72 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_69, __pyx_pybuffernd_col.diminfo[1].strides));
+2334: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_73 = (__pyx_v_p + __pyx_v_count);
__pyx_t_74 = 2;
__pyx_t_75 = __pyx_v_xt;
__pyx_t_76 = __pyx_v_yt;
__pyx_t_77 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
+2335: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+2336: if w < dp - 1:
__pyx_t_24 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L22;
}
+2337: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
2338: else:
+2339: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__pyx_t_5 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
__pyx_t_27 = 1;
}
}
__pyx_t_6 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_27, __pyx_t_7);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_6, 4+__pyx_t_27, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_34);
PyTuple_SET_ITEM(__pyx_t_6, 5+__pyx_t_27, __pyx_t_34);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_6, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_7 = 0;
__pyx_t_25 = 0;
__pyx_t_34 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 2339, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_8 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_8 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_34 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2339, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_52 = Py_TYPE(__pyx_t_34)->tp_iternext;
index = 0; __pyx_t_8 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_8)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
index = 1; __pyx_t_6 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_6)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_34), 2) < 0) __PYX_ERR(0, 2339, __pyx_L1_error)
__pyx_t_52 = NULL;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
__pyx_t_52 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 2339, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2339, __pyx_L1_error)
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2339, __pyx_L1_error)
__pyx_t_13 = ((PyArrayObject *)__pyx_t_8);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2339, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_8));
__pyx_t_8 = 0;
__pyx_t_14 = ((PyArrayObject *)__pyx_t_6);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2339, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_6));
__pyx_t_6 = 0;
+2340: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+2341: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
2342:
+2343: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2344: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
2345:
+2346: gr2DValmax = 0
__pyx_v_gr2DValmax = 0.0;
+2347: for i in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_i = __pyx_t_79;
+2348: if a[i] == 1:
__pyx_t_80 = __pyx_v_i;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+2349: tmp = gr2DVal[i]
__pyx_t_81 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_gr2DVal.diminfo[0].strides));
+2350: if tmp > gr2DValmax:
__pyx_t_24 = ((__pyx_v_tmp > __pyx_v_gr2DValmax) != 0);
if (__pyx_t_24) {
/* … */
}
+2351: gr2DValmax = tmp
__pyx_v_gr2DValmax = __pyx_v_tmp;
2352:
+2353: for k in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_k = __pyx_t_79;
+2354: if a[k] == 1:
__pyx_t_82 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+2355: xo = X[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
+2356: yo = Y[k]
__pyx_t_84 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
+2357: Io = I[xo, yo]
__pyx_t_85 = __pyx_v_xo;
__pyx_t_86 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
+2358: dr = gr2DVal[k] / gr2DValmax
__pyx_t_87 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_gr2DVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_gr2DValmax));
+2359: r[k] = r[k] + dr
__pyx_t_88 = __pyx_v_k;
__pyx_t_89 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_r.diminfo[0].strides)) + __pyx_v_dr);
+2360: rad = r[k]
__pyx_t_90 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_r.diminfo[0].strides));
+2361: a[k] = 0
__pyx_t_91 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+2362: rmax = math.ceil(rad)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble(__pyx_v_rad); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_34) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2362, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_34); __pyx_t_34 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_92 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_92 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2362, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_rmax = __pyx_t_92;
+2363: red = col[k, 0]
__pyx_t_92 = __pyx_v_k;
__pyx_t_93 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_col.diminfo[1].strides));
+2364: green = col[k, 1]
__pyx_t_94 = __pyx_v_k;
__pyx_t_95 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_95, __pyx_pybuffernd_col.diminfo[1].strides));
+2365: blue = col[k, 2]
__pyx_t_96 = __pyx_v_k;
__pyx_t_97 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_col.diminfo[1].strides));
+2366: for deli in range(0, rmax + 1):
__pyx_t_98 = (__pyx_v_rmax + 1);
for (__pyx_t_99 = 0; __pyx_t_99 < __pyx_t_98; __pyx_t_99+=1) {
__pyx_v_deli = __pyx_t_99;
+2367: for delj in range (0, rmax + 1):
__pyx_t_100 = (__pyx_v_rmax + 1);
for (__pyx_t_101 = 0; __pyx_t_101 < __pyx_t_100; __pyx_t_101+=1) {
__pyx_v_delj = __pyx_t_101;
+2368: if deli + delj <= rad:
__pyx_t_24 = (((__pyx_v_deli + __pyx_v_delj) <= __pyx_v_rad) != 0);
if (__pyx_t_24) {
/* … */
}
}
}
+2369: i, j = xo + deli, yo + delj
__pyx_t_102 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_103 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_102;
__pyx_v_j = __pyx_t_103;
+2370: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L38_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L38_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2371: if I[i, j] == 0:
__pyx_t_103 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2372: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L41;
}
+2373: PN = I[i - 1, j]
__pyx_t_105 = (__pyx_v_i - 1);
__pyx_t_106 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides));
2374: else:
+2375: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L41:;
+2376: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L42;
}
+2377: PE = I[i, j + 1]
__pyx_t_107 = __pyx_v_i;
__pyx_t_108 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides));
2378: else:
+2379: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L42:;
+2380: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L43;
}
+2381: PW = I[i, j - 1]
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_I.diminfo[1].strides));
2382: else:
+2383: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L43:;
+2384: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L44;
}
+2385: PS = I[i + 1, j]
__pyx_t_111 = (__pyx_v_i + 1);
__pyx_t_112 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_I.diminfo[1].strides));
2386: else:
+2387: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L44:;
2388:
+2389: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L46_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L46_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L46_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L46_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2390: I[i, j] = Io
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2391: Col[i, j, 2] = red
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_117 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2392: Col[i, j, 1] = green
__pyx_t_118 = __pyx_v_i;
__pyx_t_119 = __pyx_v_j;
__pyx_t_120 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2393: Col[i, j, 0] = blue
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2394: a[k] = 1
__pyx_t_124 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2395:
+2396: i, j = xo - deli, yo + delj
__pyx_t_125 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_126 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_125;
__pyx_v_j = __pyx_t_126;
+2397: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L51_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L51_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2398: if I[i, j] == 0:
__pyx_t_126 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2399: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L54;
}
+2400: PN = I[i - 1, j]
__pyx_t_127 = (__pyx_v_i - 1);
__pyx_t_128 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides));
2401: else:
+2402: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L54:;
+2403: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L55;
}
+2404: PE = I[i, j + 1]
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides));
2405: else:
+2406: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L55:;
+2407: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L56;
}
+2408: PW = I[i, j - 1]
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides));
2409: else:
+2410: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L56:;
+2411: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L57;
}
+2412: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
2413: else:
+2414: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L57:;
2415:
+2416: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L59_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2417: I[i, j] = Io
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2418: Col[i, j, 2] = red
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2419: Col[i, j, 1] = green
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2420: Col[i, j, 0] = blue
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2421: a[k] = 1
__pyx_t_146 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2422:
+2423: i, j = xo - deli, yo - delj
__pyx_t_147 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_148 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_147;
__pyx_v_j = __pyx_t_148;
+2424: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L64_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L64_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2425: if I[i, j] == 0:
__pyx_t_148 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2426: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L67;
}
+2427: PN = I[i - 1, j]
__pyx_t_149 = (__pyx_v_i - 1);
__pyx_t_150 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides));
2428: else:
+2429: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L67:;
+2430: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L68;
}
+2431: PE = I[i, j + 1]
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
2432: else:
+2433: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L68:;
+2434: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L69;
}
+2435: PW = I[i, j - 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
2436: else:
+2437: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L69:;
+2438: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L70;
}
+2439: PS = I[i + 1, j]
__pyx_t_155 = (__pyx_v_i + 1);
__pyx_t_156 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides));
2440: else:
+2441: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L70:;
2442:
+2443: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L72_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L72_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L72_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L72_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2444: I[i, j] = Io
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2445: Col[i, j, 2] = red
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_161 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2446: Col[i, j, 1] = green
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_164 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2447: Col[i, j, 0] = blue
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2448: a[k] = 1
__pyx_t_168 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2449:
+2450: i, j = xo + deli, yo - delj
__pyx_t_169 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_170 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_169;
__pyx_v_j = __pyx_t_170;
+2451: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L77_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L77_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2452: if I[i, j] == 0:
__pyx_t_170 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2453: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L80;
}
+2454: PN = I[i - 1, j]
__pyx_t_171 = (__pyx_v_i - 1);
__pyx_t_172 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_I.diminfo[1].strides));
2455: else:
+2456: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L80:;
+2457: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L81;
}
+2458: PE = I[i, j + 1]
__pyx_t_173 = __pyx_v_i;
__pyx_t_174 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_I.diminfo[1].strides));
2459: else:
+2460: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L81:;
+2461: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L82;
}
+2462: PW = I[i, j - 1]
__pyx_t_175 = __pyx_v_i;
__pyx_t_176 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_I.diminfo[1].strides));
2463: else:
+2464: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L82:;
+2465: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L83;
}
+2466: PS = I[i + 1, j]
__pyx_t_177 = (__pyx_v_i + 1);
__pyx_t_178 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides));
2467: else:
+2468: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L83:;
2469:
+2470: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L85_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2471: I[i, j] = Io
__pyx_t_179 = __pyx_v_i;
__pyx_t_180 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2472: Col[i, j, 2] = red
__pyx_t_181 = __pyx_v_i;
__pyx_t_182 = __pyx_v_j;
__pyx_t_183 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2473: Col[i, j, 1] = green
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
__pyx_t_186 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2474: Col[i, j, 0] = blue
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
__pyx_t_189 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2475: a[k] = 1
__pyx_t_190 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_190, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2476: if a[k] == 0:
__pyx_t_98 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2477: win = rmax
__pyx_v_win = __pyx_v_rmax;
+2478: xmin = max(0, xo - win)
__pyx_t_99 = (__pyx_v_xo - __pyx_v_win);
__pyx_t_191 = 0;
if (((__pyx_t_99 > __pyx_t_191) != 0)) {
__pyx_t_100 = __pyx_t_99;
} else {
__pyx_t_100 = __pyx_t_191;
}
__pyx_v_xmin = __pyx_t_100;
+2479: xmax = min(m - 1, xo + win)
__pyx_t_100 = (__pyx_v_xo + __pyx_v_win);
__pyx_t_99 = (__pyx_v_m - 1);
if (((__pyx_t_100 < __pyx_t_99) != 0)) {
__pyx_t_101 = __pyx_t_100;
} else {
__pyx_t_101 = __pyx_t_99;
}
__pyx_v_xmax = __pyx_t_101;
+2480: ymin = max(0, yo - win)
__pyx_t_101 = (__pyx_v_yo - __pyx_v_win);
__pyx_t_191 = 0;
if (((__pyx_t_101 > __pyx_t_191) != 0)) {
__pyx_t_100 = __pyx_t_101;
} else {
__pyx_t_100 = __pyx_t_191;
}
__pyx_v_ymin = __pyx_t_100;
+2481: ymax = min(n - 1, yo + win)
__pyx_t_100 = (__pyx_v_yo + __pyx_v_win);
__pyx_t_101 = (__pyx_v_n - 1);
if (((__pyx_t_100 < __pyx_t_101) != 0)) {
__pyx_t_99 = __pyx_t_100;
} else {
__pyx_t_99 = __pyx_t_101;
}
__pyx_v_ymax = __pyx_t_99;
+2482: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_99 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
2483:
+2484: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2485: nnz = cv2.countNonZero(I)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2485, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2485, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_25, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2485, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2485, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_6, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2485, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_78 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_78 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2485, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_nnz = __pyx_t_78; }
2486:
2487:
+2488: obj.p = p
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2488, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_1) < 0) __PYX_ERR(0, 2488, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2489: toc = time.time()
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2489, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2489, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (__pyx_t_25) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2489, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2489, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2489, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_toc = __pyx_t_23;
+2490: obj.exetime = toc - tic
__pyx_t_1 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2490, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_1) < 0) __PYX_ERR(0, 2490, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2491: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_delete); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_arange); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_192 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_192, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_192, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_192, 1+__pyx_t_27, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_192, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_27 = 1; } } __pyx_t_192 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); if (__pyx_t_34) { __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_192, 0, __pyx_t_34); __pyx_t_34 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_192, 0+__pyx_t_27, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_192, 1+__pyx_t_27, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_192, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_1) < 0) __PYX_ERR(0, 2491, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2492: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_192 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_delete); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_arange); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_7); __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_192))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_192); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_192); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_192, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_34) { __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_34); __pyx_t_34 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_192, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_1) < 0) __PYX_ERR(0, 2492, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2493: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 2493, __pyx_L1_error)
+2494: obj.gr2DVal = gr2DVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_gr2DVal, ((PyObject *)__pyx_v_gr2DVal)) < 0) __PYX_ERR(0, 2494, __pyx_L1_error)
+2495: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 2495, __pyx_L1_error)
2496:
+2497: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
2498:
2499:
+2500: def Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_27Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_27Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D = {"Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D", (PyCFunction)__pyx_pw_9libEVOLVE_27Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_27Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_26Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_26Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_gr2D = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_rmax;
PY_LONG_LONG __pyx_v_win;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_gr2DValmax;
float __pyx_v_dr;
float __pyx_v_rad;
float __pyx_v_tmp;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_r = 0;
PyArrayObject *__pyx_v_gr2DVal = 0;
CYTHON_UNUSED PyArrayObject *__pyx_v_rold = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_gr2DVal;
__Pyx_Buffer __pyx_pybuffer_gr2DVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_r;
__Pyx_Buffer __pyx_pybuffer_r;
__Pyx_LocalBuf_ND __pyx_pybuffernd_rold;
__Pyx_Buffer __pyx_pybuffer_rold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_r.pybuffer.buf = NULL;
__pyx_pybuffer_r.refcount = 0;
__pyx_pybuffernd_r.data = NULL;
__pyx_pybuffernd_r.rcbuffer = &__pyx_pybuffer_r;
__pyx_pybuffer_gr2DVal.pybuffer.buf = NULL;
__pyx_pybuffer_gr2DVal.refcount = 0;
__pyx_pybuffernd_gr2DVal.data = NULL;
__pyx_pybuffernd_gr2DVal.rcbuffer = &__pyx_pybuffer_gr2DVal;
__pyx_pybuffer_rold.pybuffer.buf = NULL;
__pyx_pybuffer_rold.refcount = 0;
__pyx_pybuffernd_rold.data = NULL;
__pyx_pybuffernd_rold.rcbuffer = &__pyx_pybuffer_rold;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_34);
__Pyx_XDECREF(__pyx_t_192);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_rold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_r.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_rold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_gr2D);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_r);
__Pyx_XDECREF((PyObject *)__pyx_v_gr2DVal);
__Pyx_XDECREF((PyObject *)__pyx_v_rold);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__37 = PyTuple_Pack(64, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_gr2D, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_countim, __pyx_n_s_rmax, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_w, __pyx_n_s_Iter, __pyx_n_s_gr2DValmax, __pyx_n_s_dr, __pyx_n_s_rad, __pyx_n_s_tmp, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_r, __pyx_n_s_gr2DVal, __pyx_n_s_rold, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 2500, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__37);
__Pyx_GIVEREF(__pyx_tuple__37);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_27Evolve_2D_Anisotropic_Continuous_NeighbourHoodBased_N8_with_gr2D, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2500, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_4, __pyx_t_2) < 0) __PYX_ERR(0, 2500, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__38 = (PyObject*)__Pyx_PyCode_New(1, 0, 64, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__37, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_4, 2500, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__38)) __PYX_ERR(0, 2500, __pyx_L1_error)
2501:
2502: # Grabbing data from the input object
+2503: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2503, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2503, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+2504: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2504, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2504, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+2505: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2505, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2505, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+2506: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2506, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2506, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+2507: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2507, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 2507, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+2508: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+2509: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2509, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+2510: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2510, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+2511: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+2512: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+2513: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+2514: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+2515: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+2516: gr2D = obj.gr2D
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_gr2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_gr2D = __pyx_t_1; __pyx_t_1 = 0;
2517:
2518: # Declaring other variables
2519: cdef double tic, toc
2520: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, xt, yt, dp, nnz, countim, rmax, win, xmin, xmax, ymin, ymax, i, j, k, xo, yo, w, Iter
2521: cdef float gr2DValmax, dr, rad, tmp, dt, f, t, red, green, blue
+2522: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2522, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2522, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2523: cdef np.ndarray[np.int8_t, ndim = 1] a = np.zeros(MN, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2523, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2523, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2524: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2524, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2524, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2525: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2525, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2525, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2526: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2526, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2526, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2527: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2527, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2527, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2528: cdef np.ndarray[np.float64_t, ndim = 1] r = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2528, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_r.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_r = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_r.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2528, __pyx_L1_error) } else {__pyx_pybuffernd_r.diminfo[0].strides = __pyx_pybuffernd_r.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_r.diminfo[0].shape = __pyx_pybuffernd_r.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_r = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2529: cdef np.ndarray[np.float64_t, ndim = 1] gr2DVal = np.zeros(MN, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2529, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_gr2DVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2529, __pyx_L1_error) } else {__pyx_pybuffernd_gr2DVal.diminfo[0].strides = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_gr2DVal.diminfo[0].shape = __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_gr2DVal = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2530: cdef np.ndarray[np.float64_t, ndim = 1] rold = np.zeros(MN, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2530, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_rold.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_rold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_rold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2530, __pyx_L1_error) } else {__pyx_pybuffernd_rold.diminfo[0].strides = __pyx_pybuffernd_rold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_rold.diminfo[0].shape = __pyx_pybuffernd_rold.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_rold = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2531: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2531, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2531, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_18 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2532: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2532, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2532, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2532, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_19 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2533: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2533, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2533, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2533, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2533, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2533, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+2534: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2534, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2534, __pyx_L1_error) } __pyx_t_19 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+2535: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2535, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2535, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (__pyx_t_6) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2535, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_8 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2535, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2535, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_tic = __pyx_t_23;
2536:
2537:
2538:
+2539: t = 0
__pyx_v_t = 0.0;
+2540: p = 0
__pyx_v_p = 0;
+2541: dp = 0
__pyx_v_dp = 0;
+2542: countim = 0
__pyx_v_countim = 0;
+2543: nnz = cv2.countNonZero(I)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2543, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2543, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2543, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2543, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2543, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_8); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2543, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_nnz = __pyx_t_2;
+2544: Iter = 1
__pyx_v_Iter = 1;
+2545: while nnz < MN:
while (1) {
__pyx_t_24 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_24) break;
+2546: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+2547: dt = 1.0 / Gt(t)
__pyx_t_6 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_1 = __pyx_v_Gt; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2547, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_8, 1.0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 2547, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_dt = __pyx_t_3;
+2548: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_1 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_6 = __pyx_v_Ndot; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_25, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyNumber_Multiply(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = PyNumber_Multiply(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyNumber_Int(__pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_8); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2548, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_dp = __pyx_t_2;
+2549: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+2550: if pdelNxy == []:
__pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2550, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2550, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_24 < 0)) __PYX_ERR(0, 2550, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_24) { /* … */ goto __pyx_L5; }
+2551: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L7_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2552: count = 0
__pyx_v_count = 0;
+2553: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+2554: xt = np.random.randint(0, m - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_7 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_27, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2554, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2554, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_xt = __pyx_t_2;
+2555: yt = np.random.randint(0, n - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2555, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_yt = __pyx_t_2;
+2556: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+2557: I[xt, yt] = p + count + 1
__pyx_t_29 = __pyx_v_xt;
__pyx_t_30 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+2558: X[p + count] = xt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+2559: Y[p + count] = yt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+2560: a[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2561: gr2DVal[p + count] = gr2D(xt, yt, p + count + 1)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_gr2D); __pyx_t_6 = __pyx_v_gr2D; __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_27 = 1; } } __pyx_t_34 = PyTuple_New(3+__pyx_t_27); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_34, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_34, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_34, 2+__pyx_t_27, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_25 = 0; __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_34, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 2561, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_36 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_35;
+2562: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_37 = (__pyx_v_p + __pyx_v_count);
__pyx_t_38 = 0;
__pyx_t_39 = __pyx_v_xt;
__pyx_t_40 = __pyx_v_yt;
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_col.diminfo[1].strides));
+2563: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_42 = (__pyx_v_p + __pyx_v_count);
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_xt;
__pyx_t_45 = __pyx_v_yt;
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+2564: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_47 = (__pyx_v_p + __pyx_v_count);
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_xt;
__pyx_t_50 = __pyx_v_yt;
__pyx_t_51 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+2565: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+2566: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
2567: else:
+2568: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L14_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
}
__pyx_L5:;
+2569: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_27, __pyx_t_6); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 5+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 6+__pyx_t_27, __pyx_int_1); __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 2569, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_34 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_34 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_34 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_25 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2569, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_52 = Py_TYPE(__pyx_t_25)->tp_iternext; index = 0; __pyx_t_34 = __pyx_t_52(__pyx_t_25); if (unlikely(!__pyx_t_34)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_34); index = 1; __pyx_t_5 = __pyx_t_52(__pyx_t_25); if (unlikely(!__pyx_t_5)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_25), 2) < 0) __PYX_ERR(0, 2569, __pyx_L1_error) __pyx_t_52 = NULL; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_52 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 2569, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_34) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_34, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2569, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2569, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_34); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2569, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_34)); __pyx_t_34 = 0; __pyx_t_14 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2569, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+2570: w = 0
__pyx_v_w = 0;
+2571: count = 0
__pyx_v_count = 0;
+2572: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+2573: xt = xtrial[w]
__pyx_t_53 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+2574: yt = ytrial[w]
__pyx_t_54 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+2575: if I[xt, yt] == 0:
__pyx_t_55 = __pyx_v_xt;
__pyx_t_56 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_56, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2576: I[xt, yt] = p + count + 1
__pyx_t_57 = __pyx_v_xt;
__pyx_t_58 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_58, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+2577: X[p + count] = xt
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+2578: Y[p + count] = yt
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+2579: a[p + count] = 1
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2580: gr2DVal[p + count] = gr2D(xt, yt, p + count + 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_gr2D); __pyx_t_7 = __pyx_v_gr2D; __pyx_t_6 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(3+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_t_34); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_25); __pyx_t_5 = 0; __pyx_t_34 = 0; __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 2580, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_62 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_gr2DVal.diminfo[0].strides) = __pyx_t_35;
+2581: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_63 = (__pyx_v_p + __pyx_v_count);
__pyx_t_64 = 0;
__pyx_t_65 = __pyx_v_xt;
__pyx_t_66 = __pyx_v_yt;
__pyx_t_67 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_col.diminfo[1].strides));
+2582: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_68 = (__pyx_v_p + __pyx_v_count);
__pyx_t_69 = 1;
__pyx_t_70 = __pyx_v_xt;
__pyx_t_71 = __pyx_v_yt;
__pyx_t_72 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_69, __pyx_pybuffernd_col.diminfo[1].strides));
+2583: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_73 = (__pyx_v_p + __pyx_v_count);
__pyx_t_74 = 2;
__pyx_t_75 = __pyx_v_xt;
__pyx_t_76 = __pyx_v_yt;
__pyx_t_77 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
+2584: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+2585: if w < dp - 1:
__pyx_t_24 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L22;
}
+2586: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
2587: else:
+2588: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__pyx_t_5 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
__pyx_t_27 = 1;
}
}
__pyx_t_6 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_27, __pyx_t_7);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_6, 4+__pyx_t_27, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_34);
PyTuple_SET_ITEM(__pyx_t_6, 5+__pyx_t_27, __pyx_t_34);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_6, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_7 = 0;
__pyx_t_25 = 0;
__pyx_t_34 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 2588, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_8 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_8 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_34 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2588, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_52 = Py_TYPE(__pyx_t_34)->tp_iternext;
index = 0; __pyx_t_8 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_8)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
index = 1; __pyx_t_6 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_6)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_34), 2) < 0) __PYX_ERR(0, 2588, __pyx_L1_error)
__pyx_t_52 = NULL;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
__pyx_t_52 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 2588, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2588, __pyx_L1_error)
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2588, __pyx_L1_error)
__pyx_t_13 = ((PyArrayObject *)__pyx_t_8);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2588, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_8));
__pyx_t_8 = 0;
__pyx_t_14 = ((PyArrayObject *)__pyx_t_6);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2588, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_6));
__pyx_t_6 = 0;
+2589: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+2590: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
2591:
2592:
+2593: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2594: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
2595:
+2596: gr2DValmax = 0
__pyx_v_gr2DValmax = 0.0;
+2597: for i in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_i = __pyx_t_79;
+2598: if a[i] == 1:
__pyx_t_80 = __pyx_v_i;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+2599: tmp = gr2DVal[i]
__pyx_t_81 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_gr2DVal.diminfo[0].strides));
+2600: if tmp > gr2DValmax:
__pyx_t_24 = ((__pyx_v_tmp > __pyx_v_gr2DValmax) != 0);
if (__pyx_t_24) {
/* … */
}
+2601: gr2DValmax = tmp
__pyx_v_gr2DValmax = __pyx_v_tmp;
2602:
+2603: for k in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_k = __pyx_t_79;
+2604: if a[k] == 1:
__pyx_t_82 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+2605: xo = X[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
+2606: yo = Y[k]
__pyx_t_84 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
+2607: Io = I[xo, yo]
__pyx_t_85 = __pyx_v_xo;
__pyx_t_86 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
+2608: dr = gr2DVal[k] / gr2DValmax
__pyx_t_87 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_gr2DVal.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_gr2DVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_gr2DValmax));
+2609: r[k] = r[k] + dr
__pyx_t_88 = __pyx_v_k;
__pyx_t_89 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_r.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_r.diminfo[0].strides)) + __pyx_v_dr);
+2610: rad = r[k]
__pyx_t_90 = __pyx_v_k;
__pyx_v_rad = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_r.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_r.diminfo[0].strides));
+2611: a[k] = 0
__pyx_t_91 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+2612: rmax = math.ceil(rad)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2612, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2612, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble(__pyx_v_rad); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2612, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_34) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2612, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2612, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_34); __pyx_t_34 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2612, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_92 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_92 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2612, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_rmax = __pyx_t_92;
+2613: red = col[k, 0]
__pyx_t_92 = __pyx_v_k;
__pyx_t_93 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_col.diminfo[1].strides));
+2614: green = col[k, 1]
__pyx_t_94 = __pyx_v_k;
__pyx_t_95 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_95, __pyx_pybuffernd_col.diminfo[1].strides));
+2615: blue = col[k, 2]
__pyx_t_96 = __pyx_v_k;
__pyx_t_97 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_col.diminfo[1].strides));
+2616: for deli in range(0, rmax + 1):
__pyx_t_98 = (__pyx_v_rmax + 1);
for (__pyx_t_99 = 0; __pyx_t_99 < __pyx_t_98; __pyx_t_99+=1) {
__pyx_v_deli = __pyx_t_99;
+2617: for delj in range (0, rmax + 1):
__pyx_t_100 = (__pyx_v_rmax + 1);
for (__pyx_t_101 = 0; __pyx_t_101 < __pyx_t_100; __pyx_t_101+=1) {
__pyx_v_delj = __pyx_t_101;
+2618: if deli <= rad and delj <= rad:
__pyx_t_26 = ((__pyx_v_deli <= __pyx_v_rad) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L37_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_delj <= __pyx_v_rad) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L37_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
}
}
+2619: i, j = xo + deli, yo + delj
__pyx_t_102 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_103 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_102;
__pyx_v_j = __pyx_t_103;
+2620: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L40_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2621: if I[i, j] == 0:
__pyx_t_103 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2622: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L43;
}
+2623: PN = I[i - 1, j]
__pyx_t_105 = (__pyx_v_i - 1);
__pyx_t_106 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides));
2624: else:
+2625: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L43:;
+2626: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L44;
}
+2627: PE = I[i, j + 1]
__pyx_t_107 = __pyx_v_i;
__pyx_t_108 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides));
2628: else:
+2629: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L44:;
+2630: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L45;
}
+2631: PW = I[i, j - 1]
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_I.diminfo[1].strides));
2632: else:
+2633: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L45:;
+2634: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L46;
}
+2635: PS = I[i + 1, j]
__pyx_t_111 = (__pyx_v_i + 1);
__pyx_t_112 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_I.diminfo[1].strides));
2636: else:
+2637: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L46:;
2638:
+2639: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L48_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L48_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L48_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L48_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2640: I[i, j] = Io
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2641: Col[i, j, 2] = red
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_117 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2642: Col[i, j, 1] = green
__pyx_t_118 = __pyx_v_i;
__pyx_t_119 = __pyx_v_j;
__pyx_t_120 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2643: Col[i, j, 0] = blue
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2644: a[k] = 1
__pyx_t_124 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2645:
+2646: i, j = xo - deli, yo + delj
__pyx_t_125 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_126 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_125;
__pyx_v_j = __pyx_t_126;
+2647: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L53_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2648: if I[i, j] == 0:
__pyx_t_126 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2649: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L56;
}
+2650: PN = I[i - 1, j]
__pyx_t_127 = (__pyx_v_i - 1);
__pyx_t_128 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides));
2651: else:
+2652: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L56:;
+2653: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L57;
}
+2654: PE = I[i, j + 1]
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides));
2655: else:
+2656: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L57:;
+2657: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L58;
}
+2658: PW = I[i, j - 1]
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides));
2659: else:
+2660: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L58:;
+2661: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L59;
}
+2662: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
2663: else:
+2664: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L59:;
2665:
+2666: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L61_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2667: I[i, j] = Io
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2668: Col[i, j, 2] = red
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2669: Col[i, j, 1] = green
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2670: Col[i, j, 0] = blue
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2671: a[k] = 1
__pyx_t_146 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2672:
+2673: i, j = xo - deli, yo - delj
__pyx_t_147 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_148 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_147;
__pyx_v_j = __pyx_t_148;
+2674: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L66_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L66_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2675: if I[i, j] == 0:
__pyx_t_148 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2676: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L69;
}
+2677: PN = I[i - 1, j]
__pyx_t_149 = (__pyx_v_i - 1);
__pyx_t_150 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides));
2678: else:
+2679: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L69:;
+2680: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L70;
}
+2681: PE = I[i, j + 1]
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
2682: else:
+2683: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L70:;
+2684: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L71;
}
+2685: PW = I[i, j - 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
2686: else:
+2687: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L71:;
+2688: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L72;
}
+2689: PS = I[i + 1, j]
__pyx_t_155 = (__pyx_v_i + 1);
__pyx_t_156 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides));
2690: else:
+2691: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L72:;
2692:
+2693: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L74_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L74_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L74_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L74_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2694: I[i, j] = Io
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2695: Col[i, j, 2] = red
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_161 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2696: Col[i, j, 1] = green
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_164 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2697: Col[i, j, 0] = blue
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2698: a[k] = 1
__pyx_t_168 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2699:
+2700: i, j = xo + deli, yo - delj
__pyx_t_169 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_170 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_169;
__pyx_v_j = __pyx_t_170;
+2701: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_104 = (__pyx_t_26 != 0);
if (__pyx_t_104) {
} else {
__pyx_t_24 = __pyx_t_104;
goto __pyx_L79_bool_binop_done;
}
__pyx_t_104 = (0 <= __pyx_v_j);
if (__pyx_t_104) {
__pyx_t_104 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_104 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L79_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2702: if I[i, j] == 0:
__pyx_t_170 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2703: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L82;
}
+2704: PN = I[i - 1, j]
__pyx_t_171 = (__pyx_v_i - 1);
__pyx_t_172 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_I.diminfo[1].strides));
2705: else:
+2706: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L82:;
+2707: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L83;
}
+2708: PE = I[i, j + 1]
__pyx_t_173 = __pyx_v_i;
__pyx_t_174 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_I.diminfo[1].strides));
2709: else:
+2710: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L83:;
+2711: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L84;
}
+2712: PW = I[i, j - 1]
__pyx_t_175 = __pyx_v_i;
__pyx_t_176 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_I.diminfo[1].strides));
2713: else:
+2714: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L84:;
+2715: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L85;
}
+2716: PS = I[i + 1, j]
__pyx_t_177 = (__pyx_v_i + 1);
__pyx_t_178 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides));
2717: else:
+2718: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L85:;
2719:
+2720: if PN == Io or PE == Io or PW == Io or PS == Io:
__pyx_t_26 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L87_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L87_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L87_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L87_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+2721: I[i, j] = Io
__pyx_t_179 = __pyx_v_i;
__pyx_t_180 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2722: Col[i, j, 2] = red
__pyx_t_181 = __pyx_v_i;
__pyx_t_182 = __pyx_v_j;
__pyx_t_183 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2723: Col[i, j, 1] = green
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
__pyx_t_186 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2724: Col[i, j, 0] = blue
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
__pyx_t_189 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2725: a[k] = 1
__pyx_t_190 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_190, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+2726: if a[k] == 0:
__pyx_t_98 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+2727: win = rmax
__pyx_v_win = __pyx_v_rmax;
+2728: xmin = max(0, xo - win)
__pyx_t_99 = (__pyx_v_xo - __pyx_v_win);
__pyx_t_191 = 0;
if (((__pyx_t_99 > __pyx_t_191) != 0)) {
__pyx_t_100 = __pyx_t_99;
} else {
__pyx_t_100 = __pyx_t_191;
}
__pyx_v_xmin = __pyx_t_100;
+2729: xmax = min(m - 1, xo + win)
__pyx_t_100 = (__pyx_v_xo + __pyx_v_win);
__pyx_t_99 = (__pyx_v_m - 1);
if (((__pyx_t_100 < __pyx_t_99) != 0)) {
__pyx_t_101 = __pyx_t_100;
} else {
__pyx_t_101 = __pyx_t_99;
}
__pyx_v_xmax = __pyx_t_101;
+2730: ymin = max(0, yo - win)
__pyx_t_101 = (__pyx_v_yo - __pyx_v_win);
__pyx_t_191 = 0;
if (((__pyx_t_101 > __pyx_t_191) != 0)) {
__pyx_t_100 = __pyx_t_101;
} else {
__pyx_t_100 = __pyx_t_191;
}
__pyx_v_ymin = __pyx_t_100;
+2731: ymax = min(n - 1, yo + win)
__pyx_t_100 = (__pyx_v_yo + __pyx_v_win);
__pyx_t_101 = (__pyx_v_n - 1);
if (((__pyx_t_100 < __pyx_t_101) != 0)) {
__pyx_t_99 = __pyx_t_100;
} else {
__pyx_t_99 = __pyx_t_101;
}
__pyx_v_ymax = __pyx_t_99;
+2732: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_99 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
2733:
+2734: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2735: nnz = cv2.countNonZero(I)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2735, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2735, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_25, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2735, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2735, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_6, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2735, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_78 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_78 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2735, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_nnz = __pyx_t_78; }
2736:
2737:
+2738: obj.p = p
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_1) < 0) __PYX_ERR(0, 2738, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2739: toc = time.time()
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (__pyx_t_25) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2739, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2739, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2739, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_toc = __pyx_t_23;
+2740: obj.exetime = toc - tic
__pyx_t_1 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_1) < 0) __PYX_ERR(0, 2740, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2741: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_delete); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_arange); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_192 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_192, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_192, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_192, 1+__pyx_t_27, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_192, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_27 = 1; } } __pyx_t_192 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); if (__pyx_t_34) { __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_192, 0, __pyx_t_34); __pyx_t_34 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_192, 0+__pyx_t_27, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_192, 1+__pyx_t_27, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_192, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_1) < 0) __PYX_ERR(0, 2741, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2742: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_192 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_delete); if (unlikely(!__pyx_t_192)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_192); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_arange); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_7); __pyx_t_6 = 0; __pyx_t_7 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_192))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_192); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_192); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_192, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_34) { __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_34); __pyx_t_34 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_192, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_192); __pyx_t_192 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_1) < 0) __PYX_ERR(0, 2742, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2743: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 2743, __pyx_L1_error)
+2744: obj.gr2DVal = gr2DVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_gr2DVal, ((PyObject *)__pyx_v_gr2DVal)) < 0) __PYX_ERR(0, 2744, __pyx_L1_error)
+2745: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 2745, __pyx_L1_error)
2746:
+2747: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
2748:
+2749: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_29Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_29Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_29Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_29Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_28Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_28Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_R;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_MAJ;
float __pyx_v_MIN;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_22);
__Pyx_XDECREF(__pyx_t_24);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__39 = PyTuple_Pack(46, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_R, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_Io, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_MAJ, __pyx_n_s_MIN, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(0, 2749, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__39);
__Pyx_GIVEREF(__pyx_tuple__39);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_29Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2749, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_5, __pyx_t_2) < 0) __PYX_ERR(0, 2749, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__40 = (PyObject*)__Pyx_PyCode_New(1, 0, 46, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__39, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_5, 2749, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__40)) __PYX_ERR(0, 2749, __pyx_L1_error)
2750: # Grabbing data from the input object
+2751: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2751, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+2752: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2752, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+2753: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2753, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2753, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+2754: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2754, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+2755: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2755, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+2756: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 2756, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+2757: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2757, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_4;
+2758: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2758, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2758, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_4;
+2759: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2759, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+2760: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2760, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+2761: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+2762: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2762, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
2763:
2764: # Declaring other variables
2765: cdef double tic, toc
2766: cdef long long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, Io, MAJceil, MINceil, Iter
2767: cdef float MAJ, MIN, red, green, blue
+2768: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2768, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2768, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2769: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2769, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2769, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2770: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2770, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2770, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+2771: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2771, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2771, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2772: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2772, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2772, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2773: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2773, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2773, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_14 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2774: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2774, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2774, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_15 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+2775: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2775, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2775, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2775, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2775, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2775, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+2776: col = np.random.random((p, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2776, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_16, __pyx_t_17, __pyx_t_18); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2776, __pyx_L1_error) } __pyx_t_15 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+2777: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2777, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2777, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2777, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2777, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_19 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_19 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2777, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_tic = __pyx_t_19;
2778:
+2779: if pdelNxy == []:
__pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2779, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2779, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_20 < 0)) __PYX_ERR(0, 2779, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (__pyx_t_20) { /* … */ goto __pyx_L3; }
+2780: [X, Y] = randindex2D(m, n, p)
__pyx_t_8 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2780, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) {
PyObject* sequence = __pyx_t_8;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 2780, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_5 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2780, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2780, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2780, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_21 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_5 = __pyx_t_21(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
index = 1; __pyx_t_6 = __pyx_t_21(__pyx_t_1); if (unlikely(!__pyx_t_6)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_21(__pyx_t_1), 2) < 0) __PYX_ERR(0, 2780, __pyx_L1_error)
__pyx_t_21 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_21 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 2780, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2780, __pyx_L1_error)
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2780, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_18, &__pyx_t_17, &__pyx_t_16);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_18, __pyx_t_17, __pyx_t_16);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2780, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_6);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_16, __pyx_t_17, __pyx_t_18);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2780, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6));
__pyx_t_6 = 0;
2781: else:
+2782: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_22 = NULL;
__pyx_t_23 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_22 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_22)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_22);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
__pyx_t_23 = 1;
}
}
__pyx_t_24 = PyTuple_New(7+__pyx_t_23); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_24);
if (__pyx_t_22) {
__Pyx_GIVEREF(__pyx_t_22); PyTuple_SET_ITEM(__pyx_t_24, 0, __pyx_t_22); __pyx_t_22 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_24, 0+__pyx_t_23, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_24, 1+__pyx_t_23, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_24, 2+__pyx_t_23, __pyx_t_6);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_24, 3+__pyx_t_23, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_24, 4+__pyx_t_23, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_24, 5+__pyx_t_23, __pyx_t_7);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_24, 6+__pyx_t_23, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_7 = 0;
__pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_24, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) {
PyObject* sequence = __pyx_t_8;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 2782, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_24 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_5 = PyList_GET_ITEM(sequence, 0);
__pyx_t_24 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_24);
#else
__pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_24 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_24);
#endif
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_7 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2782, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_21 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_5 = __pyx_t_21(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
index = 1; __pyx_t_24 = __pyx_t_21(__pyx_t_7); if (unlikely(!__pyx_t_24)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_24);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_21(__pyx_t_7), 2) < 0) __PYX_ERR(0, 2782, __pyx_L1_error)
__pyx_t_21 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_21 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 2782, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2782, __pyx_L1_error)
if (!(likely(((__pyx_t_24) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_24, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2782, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_18, &__pyx_t_17, &__pyx_t_16);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_18, __pyx_t_17, __pyx_t_16);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2782, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_24);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_16, __pyx_t_17, __pyx_t_18);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2782, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_24));
__pyx_t_24 = 0;
}
__pyx_L3:;
2783:
+2784: if labelsorted == 1:
__pyx_t_20 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_20) {
/* … */
}
+2785: X, Y = labelsort(n, X, Y)
__pyx_t_24 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_23 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_24))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_24); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_24); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_24, function); __pyx_t_23 = 1; } } __pyx_t_1 = PyTuple_New(3+__pyx_t_23); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_23, __pyx_t_5); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_23, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_23, ((PyObject *)__pyx_v_Y)); __pyx_t_5 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_24, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) { PyObject* sequence = __pyx_t_8; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 2785, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_24 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_24 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_24); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_24 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } else { Py_ssize_t index = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2785, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_21 = Py_TYPE(__pyx_t_5)->tp_iternext; index = 0; __pyx_t_24 = __pyx_t_21(__pyx_t_5); if (unlikely(!__pyx_t_24)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_24); index = 1; __pyx_t_1 = __pyx_t_21(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_21(__pyx_t_5), 2) < 0) __PYX_ERR(0, 2785, __pyx_L1_error) __pyx_t_21 = NULL; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_21 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 2785, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_24) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_24, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2785, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2785, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_24); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_17, &__pyx_t_16); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_17, __pyx_t_16); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2785, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_24)); __pyx_t_24 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_16, __pyx_t_17, __pyx_t_18); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2785, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+2786: MAJceil = 0
__pyx_v_MAJceil = 0;
2787:
+2788: Iter = 1
__pyx_v_Iter = 1;
+2789: while True:
while (1) {
+2790: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_25 = 0; __pyx_t_25 < __pyx_t_2; __pyx_t_25+=1) {
__pyx_v_k = __pyx_t_25;
+2791: I[X[k], Y[k]] = k + 1
__pyx_t_26 = __pyx_v_k;
__pyx_t_27 = __pyx_v_k;
__pyx_t_28 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_26, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_29 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_29, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+2792: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_30 = __pyx_v_k;
__pyx_t_31 = 0;
__pyx_t_32 = __pyx_v_k;
__pyx_t_33 = __pyx_v_k;
__pyx_t_34 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_35 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_36 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_36, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_31, __pyx_pybuffernd_col.diminfo[1].strides));
+2793: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_37 = __pyx_v_k;
__pyx_t_38 = 1;
__pyx_t_39 = __pyx_v_k;
__pyx_t_40 = __pyx_v_k;
__pyx_t_41 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_42 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_43 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_43, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_col.diminfo[1].strides));
+2794: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_44 = __pyx_v_k;
__pyx_t_45 = 2;
__pyx_t_46 = __pyx_v_k;
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_49 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_50 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_col.diminfo[1].strides));
}
2795:
+2796: showriteframe(sa, sf, fd, MAJceil, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_MAJceil, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
2797:
+2798: MAJ = 1.0
__pyx_v_MAJ = 1.0;
+2799: MIN = MAJ / R
__pyx_v_MIN = (__pyx_v_MAJ / __pyx_v_R);
2800:
2801:
+2802: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_24 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_24);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_24))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_24);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_24);
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_24, function);
}
}
if (!__pyx_t_1) {
__pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_24, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
} else {
__pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_5, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_24, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2802, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
}
__Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
__pyx_t_24 = PyObject_RichCompare(__pyx_t_8, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_24); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2802, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_24); if (unlikely(__pyx_t_20 < 0)) __PYX_ERR(0, 2802, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
if (!__pyx_t_20) break;
+2803: MAJceil = math.ceil(MAJ)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2803, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ceil); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2803, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyFloat_FromDouble(__pyx_v_MAJ); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2803, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_24 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2803, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_24); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2803, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2803, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_24); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2803, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_v_MAJceil = __pyx_t_2;
+2804: MINceil = math.ceil(MIN)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_8) { __pyx_t_24 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2804, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_24); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, NULL); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_24); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2804, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_v_MINceil = __pyx_t_2;
+2805: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_25 = 0; __pyx_t_25 < __pyx_t_2; __pyx_t_25+=1) {
__pyx_v_k = __pyx_t_25;
+2806: if a[k] == 1:
__pyx_t_51 = __pyx_v_k;
__pyx_t_20 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_20) {
/* … */
}
}
+2807: a[k] = 0
__pyx_t_52 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+2808: xo = X[k]
__pyx_t_53 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_X.diminfo[0].strides));
+2809: yo = Y[k]
__pyx_t_54 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_Y.diminfo[0].strides));
+2810: Io = I[xo, yo]
__pyx_t_55 = __pyx_v_xo;
__pyx_t_56 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_56, __pyx_pybuffernd_I.diminfo[1].strides));
+2811: red = col[k, 0]
__pyx_t_57 = __pyx_v_k;
__pyx_t_58 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_58, __pyx_pybuffernd_col.diminfo[1].strides));
+2812: green = col[k, 1]
__pyx_t_59 = __pyx_v_k;
__pyx_t_60 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_60, __pyx_pybuffernd_col.diminfo[1].strides));
+2813: blue = col[k, 2]
__pyx_t_61 = __pyx_v_k;
__pyx_t_62 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_62, __pyx_pybuffernd_col.diminfo[1].strides));
2814:
+2815: for deli in range(MAJceil + 1):
__pyx_t_63 = (__pyx_v_MAJceil + 1);
for (__pyx_t_64 = 0; __pyx_t_64 < __pyx_t_63; __pyx_t_64+=1) {
__pyx_v_deli = __pyx_t_64;
+2816: for delj in range(MINceil + 1):
__pyx_t_65 = (__pyx_v_MINceil + 1);
for (__pyx_t_66 = 0; __pyx_t_66 < __pyx_t_65; __pyx_t_66+=1) {
__pyx_v_delj = __pyx_t_66;
+2817: if (deli / MAJ) ** 2 + (delj / MIN) ** 2 <= 1:
__pyx_t_20 = (((powf((((float)__pyx_v_deli) / __pyx_v_MAJ), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_20) {
/* … */
}
}
}
2818:
+2819: i, j = xo + deli, yo + delj
__pyx_t_67 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_68 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_67;
__pyx_v_j = __pyx_t_68;
+2820: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_69 = (0 <= __pyx_v_i);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_70 = (__pyx_t_69 != 0);
if (__pyx_t_70) {
} else {
__pyx_t_20 = __pyx_t_70;
goto __pyx_L26_bool_binop_done;
}
__pyx_t_70 = (0 <= __pyx_v_j);
if (__pyx_t_70) {
__pyx_t_70 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_69 = (__pyx_t_70 != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L26_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2821: if I[i, j] == 0:
__pyx_t_68 = __pyx_v_i;
__pyx_t_67 = __pyx_v_j;
__pyx_t_20 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_67, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_20) {
/* … */
}
+2822: if i > 0:
__pyx_t_20 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L29;
}
+2823: PN = I[i - 1, j]
__pyx_t_71 = (__pyx_v_i - 1);
__pyx_t_72 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_I.diminfo[1].strides));
2824: else:
+2825: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L29:;
+2826: if j > 0:
__pyx_t_20 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L30;
}
+2827: PW = I[i, j - 1]
__pyx_t_73 = __pyx_v_i;
__pyx_t_74 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_I.diminfo[1].strides));
2828: else:
+2829: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L30:;
+2830: if PN == Io or PW == Io:
__pyx_t_69 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_69) {
} else {
__pyx_t_20 = __pyx_t_69;
goto __pyx_L32_bool_binop_done;
}
__pyx_t_69 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L32_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2831: I[i, j] = Io
__pyx_t_75 = __pyx_v_i;
__pyx_t_76 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2832: Col[i, j, 2] = red
__pyx_t_77 = __pyx_v_i;
__pyx_t_78 = __pyx_v_j;
__pyx_t_79 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2833: Col[i, j, 1] = green
__pyx_t_80 = __pyx_v_i;
__pyx_t_81 = __pyx_v_j;
__pyx_t_82 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_82, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2834: Col[i, j, 0] = blue
__pyx_t_83 = __pyx_v_i;
__pyx_t_84 = __pyx_v_j;
__pyx_t_85 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_85, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2835: a[k] = 1
__pyx_t_86 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2836:
+2837: i, j = xo - deli, yo + delj
__pyx_t_87 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_88 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_87;
__pyx_v_j = __pyx_t_88;
+2838: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_69 = (0 <= __pyx_v_i);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_70 = (__pyx_t_69 != 0);
if (__pyx_t_70) {
} else {
__pyx_t_20 = __pyx_t_70;
goto __pyx_L35_bool_binop_done;
}
__pyx_t_70 = (0 <= __pyx_v_j);
if (__pyx_t_70) {
__pyx_t_70 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_69 = (__pyx_t_70 != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L35_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2839: if I[i, j] == 0:
__pyx_t_88 = __pyx_v_i;
__pyx_t_87 = __pyx_v_j;
__pyx_t_20 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_20) {
/* … */
}
+2840: if i < m - 1:
__pyx_t_20 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L38;
}
+2841: PS = I[i + 1, j]
__pyx_t_89 = (__pyx_v_i + 1);
__pyx_t_90 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_I.diminfo[1].strides));
2842: else:
+2843: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L38:;
+2844: if j > 0:
__pyx_t_20 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L39;
}
+2845: PW = I[i, j - 1]
__pyx_t_91 = __pyx_v_i;
__pyx_t_92 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_I.diminfo[1].strides));
2846: else:
+2847: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L39:;
+2848: if PW == Io or PS == Io:
__pyx_t_69 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_69) {
} else {
__pyx_t_20 = __pyx_t_69;
goto __pyx_L41_bool_binop_done;
}
__pyx_t_69 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L41_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2849: I[i, j] = Io
__pyx_t_93 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2850: Col[i, j, 2] = red
__pyx_t_95 = __pyx_v_i;
__pyx_t_96 = __pyx_v_j;
__pyx_t_97 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2851: Col[i, j, 1] = green
__pyx_t_98 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_100 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2852: Col[i, j, 0] = blue
__pyx_t_101 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_103 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2853: a[k] = 1
__pyx_t_104 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2854:
+2855: i, j = xo - deli, yo - delj
__pyx_t_105 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_106 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_105;
__pyx_v_j = __pyx_t_106;
+2856: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_69 = (0 <= __pyx_v_i);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_70 = (__pyx_t_69 != 0);
if (__pyx_t_70) {
} else {
__pyx_t_20 = __pyx_t_70;
goto __pyx_L44_bool_binop_done;
}
__pyx_t_70 = (0 <= __pyx_v_j);
if (__pyx_t_70) {
__pyx_t_70 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_69 = (__pyx_t_70 != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L44_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2857: if I[i, j] == 0:
__pyx_t_106 = __pyx_v_i;
__pyx_t_105 = __pyx_v_j;
__pyx_t_20 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_20) {
/* … */
}
+2858: if i < m - 1:
__pyx_t_20 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L47;
}
+2859: PS = I[i + 1, j]
__pyx_t_107 = (__pyx_v_i + 1);
__pyx_t_108 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides));
2860: else:
+2861: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L47:;
+2862: if j < n - 1:
__pyx_t_20 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L48;
}
+2863: PE = I[i, j + 1]
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_I.diminfo[1].strides));
2864: else:
+2865: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L48:;
+2866: if PE == Io or PS == Io:
__pyx_t_69 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_69) {
} else {
__pyx_t_20 = __pyx_t_69;
goto __pyx_L50_bool_binop_done;
}
__pyx_t_69 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L50_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2867: I[i, j] = Io
__pyx_t_111 = __pyx_v_i;
__pyx_t_112 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2868: Col[i, j, 2] = red
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
__pyx_t_115 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2869: Col[i, j, 1] = green
__pyx_t_116 = __pyx_v_i;
__pyx_t_117 = __pyx_v_j;
__pyx_t_118 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2870: Col[i, j, 0] = blue
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
__pyx_t_121 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2871: a[k] = 1
__pyx_t_122 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2872:
+2873: i, j = xo + deli, yo - delj
__pyx_t_123 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_124 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_123;
__pyx_v_j = __pyx_t_124;
+2874: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_69 = (0 <= __pyx_v_i);
if (__pyx_t_69) {
__pyx_t_69 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_70 = (__pyx_t_69 != 0);
if (__pyx_t_70) {
} else {
__pyx_t_20 = __pyx_t_70;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_70 = (0 <= __pyx_v_j);
if (__pyx_t_70) {
__pyx_t_70 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_69 = (__pyx_t_70 != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L53_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2875: if I[i, j] == 0:
__pyx_t_124 = __pyx_v_i;
__pyx_t_123 = __pyx_v_j;
__pyx_t_20 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_20) {
/* … */
}
+2876: if i > 0:
__pyx_t_20 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L56;
}
+2877: PN = I[i - 1, j]
__pyx_t_125 = (__pyx_v_i - 1);
__pyx_t_126 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_125, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_126, __pyx_pybuffernd_I.diminfo[1].strides));
2878: else:
+2879: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L56:;
+2880: if j < n - 1:
__pyx_t_20 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_20) {
/* … */
goto __pyx_L57;
}
+2881: PE = I[i, j + 1]
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides));
2882: else:
+2883: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L57:;
+2884: if PN == Io or PE == Io:
__pyx_t_69 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_69) {
} else {
__pyx_t_20 = __pyx_t_69;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_69 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_20 = __pyx_t_69;
__pyx_L59_bool_binop_done:;
if (__pyx_t_20) {
/* … */
}
+2885: I[i, j] = Io
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+2886: Col[i, j, 2] = red
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = __pyx_v_j;
__pyx_t_133 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+2887: Col[i, j, 1] = green
__pyx_t_134 = __pyx_v_i;
__pyx_t_135 = __pyx_v_j;
__pyx_t_136 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+2888: Col[i, j, 0] = blue
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+2889: a[k] = 1
__pyx_t_140 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
2890:
+2891: if a[k] == 0:
__pyx_t_63 = __pyx_v_k;
__pyx_t_20 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_20) {
/* … */
}
+2892: xmin = max(0, xo - MAJceil)
__pyx_t_64 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_141 = 0;
if (((__pyx_t_64 > __pyx_t_141) != 0)) {
__pyx_t_65 = __pyx_t_64;
} else {
__pyx_t_65 = __pyx_t_141;
}
__pyx_v_xmin = __pyx_t_65;
+2893: xmax = min(m - 1, xo + MAJceil)
__pyx_t_65 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_64 = (__pyx_v_m - 1);
if (((__pyx_t_65 < __pyx_t_64) != 0)) {
__pyx_t_66 = __pyx_t_65;
} else {
__pyx_t_66 = __pyx_t_64;
}
__pyx_v_xmax = __pyx_t_66;
+2894: ymin = max(0, yo - MINceil)
__pyx_t_66 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_141 = 0;
if (((__pyx_t_66 > __pyx_t_141) != 0)) {
__pyx_t_65 = __pyx_t_66;
} else {
__pyx_t_65 = __pyx_t_141;
}
__pyx_v_ymin = __pyx_t_65;
+2895: ymax = min(n - 1, yo + MINceil)
__pyx_t_65 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_66 = (__pyx_v_n - 1);
if (((__pyx_t_65 < __pyx_t_66) != 0)) {
__pyx_t_64 = __pyx_t_65;
} else {
__pyx_t_64 = __pyx_t_66;
}
__pyx_v_ymax = __pyx_t_64;
+2896: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_64 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
2897:
+2898: showriteframe(sa, sf, fd, MAJceil, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_MAJceil, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2899: MAJ = MAJ + 1.0
__pyx_v_MAJ = (__pyx_v_MAJ + 1.0);
+2900: MIN = MAJ / R
__pyx_v_MIN = (__pyx_v_MAJ / __pyx_v_R);
}
+2901: if asy == 0:
__pyx_t_20 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_20) {
/* … */
}
+2902: break
goto __pyx_L12_break;
2903: else:
+2904: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2904, __pyx_L1_error)
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2904, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
}
}
if (__pyx_t_7) {
__pyx_t_24 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2904, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_24 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2904, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_24);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyInt_EqObjC(__pyx_t_24, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2904, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
__pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_20 < 0)) __PYX_ERR(0, 2904, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_20) {
/* … */
}
+2905: break
goto __pyx_L12_break;
2906: else:
+2907: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_18, &__pyx_t_17, &__pyx_t_16);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_18, __pyx_t_17, __pyx_t_16);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2907, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+2908: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_24 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_7); __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_24, __pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2908, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2908, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_16, __pyx_t_17, __pyx_t_18); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2908, __pyx_L1_error) } __pyx_t_9 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+2909: a = np.ones(p, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ones); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_24 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_24, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2909, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2909, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_17, &__pyx_t_16); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_17, __pyx_t_16); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2909, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+2910: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_6 = NULL; __pyx_t_23 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_23 = 1; } } __pyx_t_22 = PyTuple_New(4+__pyx_t_23); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_22); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_22, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_22, 0+__pyx_t_23, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_22, 1+__pyx_t_23, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_22, 2+__pyx_t_23, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_22, 3+__pyx_t_23, __pyx_t_24); __pyx_t_8 = 0; __pyx_t_5 = 0; __pyx_t_24 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_22, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 2910, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_22 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_22 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_22); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_22 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_22); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_24 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 2910, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_21 = Py_TYPE(__pyx_t_24)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_21(__pyx_t_24); if (unlikely(!__pyx_t_7)) goto __pyx_L64_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_22 = __pyx_t_21(__pyx_t_24); if (unlikely(!__pyx_t_22)) goto __pyx_L64_unpacking_failed; __Pyx_GOTREF(__pyx_t_22); if (__Pyx_IternextUnpackEndCheck(__pyx_t_21(__pyx_t_24), 2) < 0) __PYX_ERR(0, 2910, __pyx_L1_error) __pyx_t_21 = NULL; __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; goto __pyx_L65_unpacking_done; __pyx_L64_unpacking_failed:; __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_t_21 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 2910, __pyx_L1_error) __pyx_L65_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2910, __pyx_L1_error) if (!(likely(((__pyx_t_22) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_22, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2910, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_16, __pyx_t_17, __pyx_t_18); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2910, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_22); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_17, &__pyx_t_16); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_16); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_17, __pyx_t_16); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 2910, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_22)); __pyx_t_22 = 0;
+2911: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
2912:
+2913: toc = time.time()
__pyx_t_22 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_22)) __PYX_ERR(0, 2913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_22); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_22, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0; __pyx_t_22 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_22 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_22)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_22); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_22) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_22); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2913, __pyx_L1_error) __Pyx_DECREF(__pyx_t_22); __pyx_t_22 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2913, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_19 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_19 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2913, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_toc = __pyx_t_19;
+2914: obj.exetime = toc - tic
__pyx_t_1 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_1) < 0) __PYX_ERR(0, 2914, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+2915: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 2915, __pyx_L1_error)
+2916: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 2916, __pyx_L1_error)
+2917: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 2917, __pyx_L1_error)
+2918: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 2918, __pyx_L1_error)
+2919: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
2920:
+2921: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_31Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_31Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_31Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_31Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_30Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_30Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_l1;
PY_LONG_LONG __pyx_v_l2;
PY_LONG_LONG __pyx_v_imax;
PY_LONG_LONG __pyx_v_imin;
PY_LONG_LONG __pyx_v_jmax;
PY_LONG_LONG __pyx_v_jmin;
PY_LONG_LONG __pyx_v_io;
PY_LONG_LONG __pyx_v_jo;
PY_LONG_LONG __pyx_v_go;
PY_LONG_LONG __pyx_v_found;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_MAJ;
float __pyx_v_MIN;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_II = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Rval = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_II;
__Pyx_Buffer __pyx_pybuffer_II;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rval;
__Pyx_Buffer __pyx_pybuffer_Rval;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_II.pybuffer.buf = NULL;
__pyx_pybuffer_II.refcount = 0;
__pyx_pybuffernd_II.data = NULL;
__pyx_pybuffernd_II.rcbuffer = &__pyx_pybuffer_II;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Rval.pybuffer.buf = NULL;
__pyx_pybuffer_Rval.refcount = 0;
__pyx_pybuffernd_Rval.data = NULL;
__pyx_pybuffernd_Rval.rcbuffer = &__pyx_pybuffer_Rval;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_25);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_II);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Rval);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__41 = PyTuple_Pack(62, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_count, __pyx_n_s_l, __pyx_n_s_l1, __pyx_n_s_l2, __pyx_n_s_imax, __pyx_n_s_imin, __pyx_n_s_jmax, __pyx_n_s_jmin, __pyx_n_s_io, __pyx_n_s_jo, __pyx_n_s_go, __pyx_n_s_found, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_MAJ, __pyx_n_s_MIN, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_II, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Rval, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(0, 2921, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__41);
__Pyx_GIVEREF(__pyx_tuple__41);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_31Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2921, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_6, __pyx_t_2) < 0) __PYX_ERR(0, 2921, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__42 = (PyObject*)__Pyx_PyCode_New(1, 0, 62, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__41, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_6, 2921, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__42)) __PYX_ERR(0, 2921, __pyx_L1_error)
2922: # Grabbing data from the input object
+2923: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2923, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2923, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+2924: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2924, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2924, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+2925: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2925, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2925, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+2926: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2926, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2926, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+2927: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2927, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+2928: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2928, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2928, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+2929: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2929, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2929, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+2930: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2930, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2930, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+2931: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2931, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 2931, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+2932: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2932, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+2933: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2933, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+2934: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2934, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
2935:
2936: # Declaring other variables
2937: cdef double tic, toc
2938: cdef long long deli, delj, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, dum, count, l, l1 , l2, imax, imin, jmax, jmin, io, jo, go, found, i, j, k, xo, yo, MAJceil, MINceil, Iter
2939: cdef float MAJ, MIN, red, green, blue
+2940: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2940, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2940, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2941: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2941, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2941, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2942: cdef np.ndarray[np.int64_t, ndim = 2] II = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2942, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2942, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_II = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_II.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2942, __pyx_L1_error) } else {__pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_II = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2943: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ones); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2943, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2943, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2943, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2944: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2944, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2944, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2944, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+2945: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2945, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2945, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2945, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+2946: cdef np.ndarray[np.int64_t, ndim = 1] Rval = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2946, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2946, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Rval = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2946, __pyx_L1_error) } else {__pyx_pybuffernd_Rval.diminfo[0].strides = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rval.diminfo[0].shape = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_Rval = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2947: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2947, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2947, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2947, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_15 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+2948: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2948, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2948, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 2948, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_16 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+2949: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2949, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2949, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_4) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2949, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2949, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2949, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+2950: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_6) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2950, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2950, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2950, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+2951: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2951, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2951, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2951, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2951, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 2951, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_tic = __pyx_t_20;
2952:
+2953: if pdelNxy == []:
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2953, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2953, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 2953, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_21) { /* … */ goto __pyx_L3; }
+2954: [X, Y] = randindex2D(m, n, p)
__pyx_t_4 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2954, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 2954, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2954, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2954, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2954, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_1), 2) < 0) __PYX_ERR(0, 2954, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 2954, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2954, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2954, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2954, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2954, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
2955: else:
+2956: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_23 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_23 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_23)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_24 = 1;
}
}
__pyx_t_25 = PyTuple_New(7+__pyx_t_24); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_23) {
__Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_23); __pyx_t_23 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_24, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_24, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_24, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 5+__pyx_t_24, __pyx_t_6);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 6+__pyx_t_24, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
PyObject* sequence = __pyx_t_4;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 2956, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_25 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_25 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_25);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
#endif
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_7)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_25 = __pyx_t_22(__pyx_t_6); if (unlikely(!__pyx_t_25)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_25);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_6), 2) < 0) __PYX_ERR(0, 2956, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 2956, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2956, __pyx_L1_error)
if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2956, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2956, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_25);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2956, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_25));
__pyx_t_25 = 0;
}
__pyx_L3:;
2957:
+2958: if labelsorted == 1:
__pyx_t_21 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_21) {
/* … */
}
+2959: X, Y = labelsort(n, X, Y)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2959, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2959, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_24 = 1; } } __pyx_t_1 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2959, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_24, __pyx_t_7); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_24, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_24, ((PyObject *)__pyx_v_Y)); __pyx_t_7 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2959, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 2959, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_25 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_25 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_25 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2959, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2959, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2959, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_25 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_25)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_25); index = 1; __pyx_t_1 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_7), 2) < 0) __PYX_ERR(0, 2959, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 2959, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2959, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 2959, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2959, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 2959, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
2960:
+2961: Iter = 1
__pyx_v_Iter = 1;
2962:
+2963: while True:
while (1) {
2964:
+2965: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+2966: I[X[k], Y[k]] = k + 1
__pyx_t_27 = __pyx_v_k;
__pyx_t_28 = __pyx_v_k;
__pyx_t_29 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_30 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+2967: Rval[k] = Rfunc(X[k], Y[k], k + 1, 1, 0)
__pyx_t_31 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 2967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_32 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_6 = __pyx_v_Rfunc; __pyx_t_5 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_24 = 1;
}
}
__pyx_t_23 = PyTuple_New(5+__pyx_t_24); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_24, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_24, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_24, __pyx_t_7);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_23, 3+__pyx_t_24, __pyx_int_1);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 4+__pyx_t_24, __pyx_int_0);
__pyx_t_1 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = 0;
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_23, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2967, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_33 = __Pyx_PyInt_As_npy_int64(__pyx_t_4); if (unlikely((__pyx_t_33 == (npy_int64)-1) && PyErr_Occurred())) __PYX_ERR(0, 2967, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_34 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_33;
+2968: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = 0;
__pyx_t_37 = __pyx_v_k;
__pyx_t_38 = __pyx_v_k;
__pyx_t_33 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_39 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_40 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_col.diminfo[1].strides));
+2969: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_41 = __pyx_v_k;
__pyx_t_42 = 1;
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = __pyx_v_k;
__pyx_t_45 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_46 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_47 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_42, __pyx_pybuffernd_col.diminfo[1].strides));
+2970: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_48 = __pyx_v_k;
__pyx_t_49 = 2;
__pyx_t_50 = __pyx_v_k;
__pyx_t_51 = __pyx_v_k;
__pyx_t_52 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_53 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_54 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_49, __pyx_pybuffernd_col.diminfo[1].strides));
}
2971:
+2972: showriteframe(sa, sf, fd, 0, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, 0, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+2973: MAJ = 1.0
__pyx_v_MAJ = 1.0;
2974:
+2975: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2975, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2975, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_6) {
__pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2975, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
} else {
__pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2975, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_7, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2975, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_4, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2975, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 2975, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_21) break;
+2976: MAJceil = math.ceil(MAJ)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2976, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2976, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyFloat_FromDouble(__pyx_v_MAJ); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 2976, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_6) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_4); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2976, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2976, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2976, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_23); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2976, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_MAJceil = __pyx_t_2;
+2977: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+2978: if a[k] == 1:
__pyx_t_55 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+2979: a[k] = 0
__pyx_t_56 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+2980: xo = X[k]
__pyx_t_57 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_X.diminfo[0].strides));
+2981: yo = Y[k]
__pyx_t_58 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_Y.diminfo[0].strides));
+2982: Io = I[xo, yo]
__pyx_t_59 = __pyx_v_xo;
__pyx_t_60 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_60, __pyx_pybuffernd_I.diminfo[1].strides));
2983:
+2984: MIN = MAJ / Rval[k]
__pyx_t_61 = __pyx_v_k;
__pyx_v_MIN = (__pyx_v_MAJ / ((float)(*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_Rval.diminfo[0].strides))));
+2985: MINceil = math.ceil(MIN)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2985, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ceil); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 2985, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 2985, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_4) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2985, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 2985, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); __pyx_t_4 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 2985, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_62 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_23); if (unlikely((__pyx_t_62 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 2985, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_MINceil = __pyx_t_62;
+2986: red = col[k, 0]
__pyx_t_62 = __pyx_v_k;
__pyx_t_63 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_col.diminfo[1].strides));
+2987: green = col[k, 1]
__pyx_t_64 = __pyx_v_k;
__pyx_t_65 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_65, __pyx_pybuffernd_col.diminfo[1].strides));
+2988: blue = col[k, 2]
__pyx_t_66 = __pyx_v_k;
__pyx_t_67 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_67, __pyx_pybuffernd_col.diminfo[1].strides));
2989:
2990:
+2991: imax, imin, jmax, jmin = xo, xo, yo, yo
__pyx_t_68 = __pyx_v_xo;
__pyx_t_69 = __pyx_v_xo;
__pyx_t_70 = __pyx_v_yo;
__pyx_t_71 = __pyx_v_yo;
__pyx_v_imax = __pyx_t_68;
__pyx_v_imin = __pyx_t_69;
__pyx_v_jmax = __pyx_t_70;
__pyx_v_jmin = __pyx_t_71;
2992:
+2993: count = 0
__pyx_v_count = 0;
+2994: for deli in range(0, MAJceil + 1):
__pyx_t_71 = (__pyx_v_MAJceil + 1);
for (__pyx_t_70 = 0; __pyx_t_70 < __pyx_t_71; __pyx_t_70+=1) {
__pyx_v_deli = __pyx_t_70;
+2995: for delj in range(0, MINceil + 1):
__pyx_t_69 = (__pyx_v_MINceil + 1);
for (__pyx_t_68 = 0; __pyx_t_68 < __pyx_t_69; __pyx_t_68+=1) {
__pyx_v_delj = __pyx_t_68;
+2996: if (deli / MAJ) ** 2 + (delj / MIN) ** 2 <= 1:
__pyx_t_21 = (((powf((((float)__pyx_v_deli) / __pyx_v_MAJ), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_21) {
/* … */
}
}
}
+2997: for l1 in range(-1, 2, 2):
for (__pyx_t_72 = -1L; __pyx_t_72 < 2; __pyx_t_72+=2) {
__pyx_v_l1 = __pyx_t_72;
+2998: for l2 in range(-1, 2, 2):
for (__pyx_t_73 = -1L; __pyx_t_73 < 2; __pyx_t_73+=2) {
__pyx_v_l2 = __pyx_t_73;
+2999: i, j = xo + l1 * deli, yo + l2 * delj
__pyx_t_74 = (__pyx_v_xo + (__pyx_v_l1 * __pyx_v_deli));
__pyx_t_75 = (__pyx_v_yo + (__pyx_v_l2 * __pyx_v_delj));
__pyx_v_i = __pyx_t_74;
__pyx_v_j = __pyx_t_75;
+3000: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_76 = (0 <= __pyx_v_i);
if (__pyx_t_76) {
__pyx_t_76 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_77 = (__pyx_t_76 != 0);
if (__pyx_t_77) {
} else {
__pyx_t_21 = __pyx_t_77;
goto __pyx_L30_bool_binop_done;
}
__pyx_t_77 = (0 <= __pyx_v_j);
if (__pyx_t_77) {
__pyx_t_77 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_76 = (__pyx_t_77 != 0);
__pyx_t_21 = __pyx_t_76;
__pyx_L30_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
}
}
+3001: if I[i, j] == 0:
__pyx_t_75 = __pyx_v_i;
__pyx_t_74 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3002: II[i, j] = Io
__pyx_t_78 = __pyx_v_i;
__pyx_t_79 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_79, __pyx_pybuffernd_II.diminfo[1].strides) = __pyx_v_Io;
+3003: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+3004: if i > imax:
__pyx_t_21 = ((__pyx_v_i > __pyx_v_imax) != 0);
if (__pyx_t_21) {
/* … */
}
+3005: imax = i
__pyx_v_imax = __pyx_v_i;
+3006: if i < imin:
__pyx_t_21 = ((__pyx_v_i < __pyx_v_imin) != 0);
if (__pyx_t_21) {
/* … */
}
+3007: imin = i
__pyx_v_imin = __pyx_v_i;
+3008: if j > jmax:
__pyx_t_21 = ((__pyx_v_j > __pyx_v_jmax) != 0);
if (__pyx_t_21) {
/* … */
}
+3009: jmax = j
__pyx_v_jmax = __pyx_v_j;
+3010: if j < jmin:
__pyx_t_21 = ((__pyx_v_j < __pyx_v_jmin) != 0);
if (__pyx_t_21) {
/* … */
}
+3011: jmin = j
__pyx_v_jmin = __pyx_v_j;
3012:
+3013: if count > 0:
__pyx_t_21 = ((__pyx_v_count > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3014: i = imin
__pyx_v_i = __pyx_v_imin;
+3015: go = 1
__pyx_v_go = 1;
+3016: found = 0
__pyx_v_found = 0;
+3017: while go is True:
while (1) {
__pyx_t_21 = ((__pyx_v_go == 1) != 0);
if (!__pyx_t_21) break;
+3018: for j in range(jmin, jmax + 1, 1):
__pyx_t_71 = (__pyx_v_jmax + 1);
for (__pyx_t_70 = __pyx_v_jmin; __pyx_t_70 < __pyx_t_71; __pyx_t_70+=1) {
__pyx_v_j = __pyx_t_70;
+3019: if II[i, j] == Io:
__pyx_t_69 = __pyx_v_i;
__pyx_t_68 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L41_break:;
+3020: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3021: if I[i - 1, j] == Io:
__pyx_t_72 = (__pyx_v_i - 1);
__pyx_t_73 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3022: io, jo = i, j
__pyx_t_80 = __pyx_v_i;
__pyx_t_81 = __pyx_v_j;
__pyx_v_io = __pyx_t_80;
__pyx_v_jo = __pyx_t_81;
+3023: go = 0
__pyx_v_go = 0;
+3024: found = 1
__pyx_v_found = 1;
+3025: break
goto __pyx_L41_break;
+3026: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3027: if I[i, j - 1] == Io:
__pyx_t_81 = __pyx_v_i;
__pyx_t_80 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_80, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3028: io, jo = i, j
__pyx_t_82 = __pyx_v_i;
__pyx_t_83 = __pyx_v_j;
__pyx_v_io = __pyx_t_82;
__pyx_v_jo = __pyx_t_83;
+3029: go = 0
__pyx_v_go = 0;
+3030: found = 1
__pyx_v_found = 1;
+3031: break
goto __pyx_L41_break;
3032:
+3033: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3034: if I[i, j + 1] == Io:
__pyx_t_83 = __pyx_v_i;
__pyx_t_82 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3035: io, jo = i, j
__pyx_t_84 = __pyx_v_i;
__pyx_t_85 = __pyx_v_j;
__pyx_v_io = __pyx_t_84;
__pyx_v_jo = __pyx_t_85;
+3036: go = 0
__pyx_v_go = 0;
+3037: found = 1
__pyx_v_found = 1;
+3038: break
goto __pyx_L41_break;
3039:
3040:
+3041: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3042: if I[i + 1, j] == Io:
__pyx_t_85 = (__pyx_v_i + 1);
__pyx_t_84 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3043: io, jo = i, j
__pyx_t_86 = __pyx_v_i;
__pyx_t_87 = __pyx_v_j;
__pyx_v_io = __pyx_t_86;
__pyx_v_jo = __pyx_t_87;
+3044: go = 0
__pyx_v_go = 0;
+3045: found = 1
__pyx_v_found = 1;
+3046: break
goto __pyx_L41_break;
+3047: i = i + 1
__pyx_v_i = (__pyx_v_i + 1);
+3048: if i == imax + 1:
__pyx_t_21 = ((__pyx_v_i == (__pyx_v_imax + 1)) != 0);
if (__pyx_t_21) {
/* … */
}
}
+3049: go = 0
__pyx_v_go = 0;
3050:
+3051: if found == 1:
__pyx_t_21 = ((__pyx_v_found == 1) != 0);
if (__pyx_t_21) {
/* … */
}
3052:
3053: # OUTWARD
+3054: for i in range(io, imax + 1):
__pyx_t_71 = (__pyx_v_imax + 1);
for (__pyx_t_70 = __pyx_v_io; __pyx_t_70 < __pyx_t_71; __pyx_t_70+=1) {
__pyx_v_i = __pyx_t_70;
+3055: for j in range(jo, jmax + 1):
__pyx_t_87 = (__pyx_v_jmax + 1);
for (__pyx_t_86 = __pyx_v_jo; __pyx_t_86 < __pyx_t_87; __pyx_t_86+=1) {
__pyx_v_j = __pyx_t_86;
+3056: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3057: if II[i, j] == Io:
__pyx_t_89 = __pyx_v_i;
__pyx_t_90 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L58_break:;
}
+3058: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3059: if I[i - 1, j] == Io:
__pyx_t_91 = (__pyx_v_i - 1);
__pyx_t_92 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3060: I[i, j] = Io
__pyx_t_93 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3061: Col[i, j, 2] = red
__pyx_t_95 = __pyx_v_i;
__pyx_t_96 = __pyx_v_j;
__pyx_t_97 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3062: Col[i, j, 1] = green
__pyx_t_98 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_100 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3063: Col[i, j, 0] = blue
__pyx_t_101 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_103 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3064: a[k] = 1
__pyx_t_104 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3065: break
goto __pyx_L58_break;
+3066: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3067: if I[i, j - 1] == Io:
__pyx_t_105 = __pyx_v_i;
__pyx_t_106 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3068: I[i, j] = Io
__pyx_t_107 = __pyx_v_i;
__pyx_t_108 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3069: Col[i, j, 2] = red
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = __pyx_v_j;
__pyx_t_111 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3070: Col[i, j, 1] = green
__pyx_t_112 = __pyx_v_i;
__pyx_t_113 = __pyx_v_j;
__pyx_t_114 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3071: Col[i, j, 0] = blue
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_117 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3072: a[k] = 1
__pyx_t_118 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3073: break
goto __pyx_L58_break;
3074:
+3075: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3076: if I[i, j + 1] == Io:
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3077: I[i, j] = Io
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3078: Col[i, j, 2] = red
__pyx_t_123 = __pyx_v_i;
__pyx_t_124 = __pyx_v_j;
__pyx_t_125 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3079: Col[i, j, 1] = green
__pyx_t_126 = __pyx_v_i;
__pyx_t_127 = __pyx_v_j;
__pyx_t_128 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3080: Col[i, j, 0] = blue
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = __pyx_v_j;
__pyx_t_131 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3081: a[k] = 1
__pyx_t_132 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3082: break
goto __pyx_L58_break;
3083:
3084:
+3085: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3086: if I[i + 1, j] == Io:
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3087: I[i, j] = Io
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3088: Col[i, j, 2] = red
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3089: Col[i, j, 1] = green
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3090: Col[i, j, 0] = blue
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3091: a[k] = 1
__pyx_t_146 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3092: break
goto __pyx_L58_break;
3093:
+3094: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_87 = (__pyx_v_jmin - 1);
for (__pyx_t_86 = (__pyx_v_jo - 1); __pyx_t_86 > __pyx_t_87; __pyx_t_86-=1) {
__pyx_v_j = __pyx_t_86;
+3095: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3096: if II[i, j] == Io:
__pyx_t_147 = __pyx_v_i;
__pyx_t_148 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L71_break:;
}
}
+3097: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3098: if I[i - 1, j] == Io:
__pyx_t_149 = (__pyx_v_i - 1);
__pyx_t_150 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3099: I[i, j] = Io
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3100: Col[i, j, 2] = red
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = __pyx_v_j;
__pyx_t_155 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_155, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3101: Col[i, j, 1] = green
__pyx_t_156 = __pyx_v_i;
__pyx_t_157 = __pyx_v_j;
__pyx_t_158 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3102: Col[i, j, 0] = blue
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_161 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3103: a[k] = 1
__pyx_t_162 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3104: break
goto __pyx_L71_break;
+3105: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3106: if I[i, j - 1] == Io:
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3107: I[i, j] = Io
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3108: Col[i, j, 2] = red
__pyx_t_167 = __pyx_v_i;
__pyx_t_168 = __pyx_v_j;
__pyx_t_169 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3109: Col[i, j, 1] = green
__pyx_t_170 = __pyx_v_i;
__pyx_t_171 = __pyx_v_j;
__pyx_t_172 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3110: Col[i, j, 0] = blue
__pyx_t_173 = __pyx_v_i;
__pyx_t_174 = __pyx_v_j;
__pyx_t_175 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3111: a[k] = 1
__pyx_t_176 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_176, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3112: break
goto __pyx_L71_break;
3113:
+3114: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3115: if I[i, j + 1] == Io:
__pyx_t_177 = __pyx_v_i;
__pyx_t_178 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3116: I[i, j] = Io
__pyx_t_179 = __pyx_v_i;
__pyx_t_180 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3117: Col[i, j, 2] = red
__pyx_t_181 = __pyx_v_i;
__pyx_t_182 = __pyx_v_j;
__pyx_t_183 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3118: Col[i, j, 1] = green
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
__pyx_t_186 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3119: Col[i, j, 0] = blue
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
__pyx_t_189 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3120: a[k] = 1
__pyx_t_190 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_190, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3121: break
goto __pyx_L71_break;
3122:
3123:
+3124: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3125: if I[i + 1, j] == Io:
__pyx_t_191 = (__pyx_v_i + 1);
__pyx_t_192 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3126: I[i, j] = Io
__pyx_t_193 = __pyx_v_i;
__pyx_t_194 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_193, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_194, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3127: Col[i, j, 2] = red
__pyx_t_195 = __pyx_v_i;
__pyx_t_196 = __pyx_v_j;
__pyx_t_197 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3128: Col[i, j, 1] = green
__pyx_t_198 = __pyx_v_i;
__pyx_t_199 = __pyx_v_j;
__pyx_t_200 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3129: Col[i, j, 0] = blue
__pyx_t_201 = __pyx_v_i;
__pyx_t_202 = __pyx_v_j;
__pyx_t_203 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3130: a[k] = 1
__pyx_t_204 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_204, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3131: break
goto __pyx_L71_break;
3132:
3133:
3134:
+3135: for i in range(io - 1, imin - 1, -1):
__pyx_t_71 = (__pyx_v_imin - 1);
for (__pyx_t_70 = (__pyx_v_io - 1); __pyx_t_70 > __pyx_t_71; __pyx_t_70-=1) {
__pyx_v_i = __pyx_t_70;
+3136: for j in range(jo, jmax + 1):
__pyx_t_87 = (__pyx_v_jmax + 1);
for (__pyx_t_86 = __pyx_v_jo; __pyx_t_86 < __pyx_t_87; __pyx_t_86+=1) {
__pyx_v_j = __pyx_t_86;
+3137: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3138: if II[i, j] == Io:
__pyx_t_205 = __pyx_v_i;
__pyx_t_206 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_206, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L86_break:;
}
+3139: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3140: if I[i - 1, j] == Io:
__pyx_t_207 = (__pyx_v_i - 1);
__pyx_t_208 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_208, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3141: I[i, j] = Io
__pyx_t_209 = __pyx_v_i;
__pyx_t_210 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_210, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3142: Col[i, j, 2] = red
__pyx_t_211 = __pyx_v_i;
__pyx_t_212 = __pyx_v_j;
__pyx_t_213 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_211, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_212, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_213, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3143: Col[i, j, 1] = green
__pyx_t_214 = __pyx_v_i;
__pyx_t_215 = __pyx_v_j;
__pyx_t_216 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_214, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_215, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_216, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3144: Col[i, j, 0] = blue
__pyx_t_217 = __pyx_v_i;
__pyx_t_218 = __pyx_v_j;
__pyx_t_219 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_219, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3145: a[k] = 1
__pyx_t_220 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_220, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3146: break
goto __pyx_L86_break;
+3147: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3148: if I[i, j - 1] == Io:
__pyx_t_221 = __pyx_v_i;
__pyx_t_222 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_222, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3149: I[i, j] = Io
__pyx_t_223 = __pyx_v_i;
__pyx_t_224 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_224, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3150: Col[i, j, 2] = red
__pyx_t_225 = __pyx_v_i;
__pyx_t_226 = __pyx_v_j;
__pyx_t_227 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3151: Col[i, j, 1] = green
__pyx_t_228 = __pyx_v_i;
__pyx_t_229 = __pyx_v_j;
__pyx_t_230 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_228, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_229, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3152: Col[i, j, 0] = blue
__pyx_t_231 = __pyx_v_i;
__pyx_t_232 = __pyx_v_j;
__pyx_t_233 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3153: a[k] = 1
__pyx_t_234 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_234, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3154: break
goto __pyx_L86_break;
3155:
+3156: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3157: if I[i, j + 1] == Io:
__pyx_t_235 = __pyx_v_i;
__pyx_t_236 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_236, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3158: I[i, j] = Io
__pyx_t_237 = __pyx_v_i;
__pyx_t_238 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_237, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_238, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3159: Col[i, j, 2] = red
__pyx_t_239 = __pyx_v_i;
__pyx_t_240 = __pyx_v_j;
__pyx_t_241 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3160: Col[i, j, 1] = green
__pyx_t_242 = __pyx_v_i;
__pyx_t_243 = __pyx_v_j;
__pyx_t_244 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3161: Col[i, j, 0] = blue
__pyx_t_245 = __pyx_v_i;
__pyx_t_246 = __pyx_v_j;
__pyx_t_247 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_246, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3162: a[k] = 1
__pyx_t_248 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_248, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3163: break
goto __pyx_L86_break;
3164:
3165:
+3166: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3167: if I[i + 1, j] == Io:
__pyx_t_249 = (__pyx_v_i + 1);
__pyx_t_250 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_250, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3168: I[i, j] = Io
__pyx_t_251 = __pyx_v_i;
__pyx_t_252 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_251, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_252, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3169: Col[i, j, 2] = red
__pyx_t_253 = __pyx_v_i;
__pyx_t_254 = __pyx_v_j;
__pyx_t_255 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_253, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3170: Col[i, j, 1] = green
__pyx_t_256 = __pyx_v_i;
__pyx_t_257 = __pyx_v_j;
__pyx_t_258 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3171: Col[i, j, 0] = blue
__pyx_t_259 = __pyx_v_i;
__pyx_t_260 = __pyx_v_j;
__pyx_t_261 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3172: a[k] = 1
__pyx_t_262 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_262, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3173: break
goto __pyx_L86_break;
3174:
+3175: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_87 = (__pyx_v_jmin - 1);
for (__pyx_t_86 = (__pyx_v_jo - 1); __pyx_t_86 > __pyx_t_87; __pyx_t_86-=1) {
__pyx_v_j = __pyx_t_86;
+3176: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3177: if II[i, j] == Io:
__pyx_t_263 = __pyx_v_i;
__pyx_t_264 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_263, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_264, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L99_break:;
}
}
+3178: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3179: if I[i - 1, j] == Io:
__pyx_t_265 = (__pyx_v_i - 1);
__pyx_t_266 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_265, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_266, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3180: I[i, j] = Io
__pyx_t_267 = __pyx_v_i;
__pyx_t_268 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_267, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_268, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3181: Col[i, j, 2] = red
__pyx_t_269 = __pyx_v_i;
__pyx_t_270 = __pyx_v_j;
__pyx_t_271 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3182: Col[i, j, 1] = green
__pyx_t_272 = __pyx_v_i;
__pyx_t_273 = __pyx_v_j;
__pyx_t_274 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_272, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_273, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_274, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3183: Col[i, j, 0] = blue
__pyx_t_275 = __pyx_v_i;
__pyx_t_276 = __pyx_v_j;
__pyx_t_277 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3184: a[k] = 1
__pyx_t_278 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_278, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3185: break
goto __pyx_L99_break;
+3186: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3187: if I[i, j - 1] == Io:
__pyx_t_279 = __pyx_v_i;
__pyx_t_280 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_280, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3188: I[i, j] = Io
__pyx_t_281 = __pyx_v_i;
__pyx_t_282 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_281, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_282, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3189: a[k] = 1
__pyx_t_283 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_283, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3190: break
goto __pyx_L99_break;
3191:
+3192: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3193: if I[i, j + 1] == Io:
__pyx_t_284 = __pyx_v_i;
__pyx_t_285 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3194: I[i, j] = Io
__pyx_t_286 = __pyx_v_i;
__pyx_t_287 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_286, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_287, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3195: Col[i, j, 2] = red
__pyx_t_288 = __pyx_v_i;
__pyx_t_289 = __pyx_v_j;
__pyx_t_290 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3196: Col[i, j, 1] = green
__pyx_t_291 = __pyx_v_i;
__pyx_t_292 = __pyx_v_j;
__pyx_t_293 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3197: Col[i, j, 0] = blue
__pyx_t_294 = __pyx_v_i;
__pyx_t_295 = __pyx_v_j;
__pyx_t_296 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3198: a[k] = 1
__pyx_t_297 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_297, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3199: break
goto __pyx_L99_break;
3200:
3201:
+3202: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3203: if I[i + 1, j] == Io:
__pyx_t_298 = (__pyx_v_i + 1);
__pyx_t_299 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3204: I[i, j] = Io
__pyx_t_300 = __pyx_v_i;
__pyx_t_301 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_300, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_301, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3205: Col[i, j, 2] = red
__pyx_t_302 = __pyx_v_i;
__pyx_t_303 = __pyx_v_j;
__pyx_t_304 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_304, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3206: Col[i, j, 1] = green
__pyx_t_305 = __pyx_v_i;
__pyx_t_306 = __pyx_v_j;
__pyx_t_307 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3207: Col[i, j, 0] = blue
__pyx_t_308 = __pyx_v_i;
__pyx_t_309 = __pyx_v_j;
__pyx_t_310 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3208: a[k] = 1
__pyx_t_311 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_311, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3209: break
goto __pyx_L99_break;
3210:
3211:
3212:
3213: # INWARD
+3214: for i in range(imax, io - 1, -1):
__pyx_t_71 = (__pyx_v_io - 1);
for (__pyx_t_70 = __pyx_v_imax; __pyx_t_70 > __pyx_t_71; __pyx_t_70-=1) {
__pyx_v_i = __pyx_t_70;
+3215: for j in range(jo, jmax + 1):
__pyx_t_87 = (__pyx_v_jmax + 1);
for (__pyx_t_86 = __pyx_v_jo; __pyx_t_86 < __pyx_t_87; __pyx_t_86+=1) {
__pyx_v_j = __pyx_t_86;
+3216: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3217: if II[i, j] == Io:
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L114_break:;
}
+3218: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3219: if I[i - 1, j] == Io:
__pyx_t_314 = (__pyx_v_i - 1);
__pyx_t_315 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_314, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_315, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3220: I[i, j] = Io
__pyx_t_316 = __pyx_v_i;
__pyx_t_317 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_317, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3221: Col[i, j, 2] = red
__pyx_t_318 = __pyx_v_i;
__pyx_t_319 = __pyx_v_j;
__pyx_t_320 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_318, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3222: Col[i, j, 1] = green
__pyx_t_321 = __pyx_v_i;
__pyx_t_322 = __pyx_v_j;
__pyx_t_323 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3223: Col[i, j, 0] = blue
__pyx_t_324 = __pyx_v_i;
__pyx_t_325 = __pyx_v_j;
__pyx_t_326 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3224: a[k] = 1
__pyx_t_327 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_327, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3225: break
goto __pyx_L114_break;
+3226: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3227: if I[i, j - 1] == Io:
__pyx_t_328 = __pyx_v_i;
__pyx_t_329 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_328, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_329, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3228: I[i, j] = Io
__pyx_t_330 = __pyx_v_i;
__pyx_t_331 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_330, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_331, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3229: Col[i, j, 2] = red
__pyx_t_332 = __pyx_v_i;
__pyx_t_333 = __pyx_v_j;
__pyx_t_334 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_332, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_333, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3230: Col[i, j, 1] = green
__pyx_t_335 = __pyx_v_i;
__pyx_t_336 = __pyx_v_j;
__pyx_t_337 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3231: Col[i, j, 0] = blue
__pyx_t_338 = __pyx_v_i;
__pyx_t_339 = __pyx_v_j;
__pyx_t_340 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3232: a[k] = 1
__pyx_t_341 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_341, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3233: break
goto __pyx_L114_break;
3234:
+3235: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3236: if I[i, j + 1] == Io:
__pyx_t_342 = __pyx_v_i;
__pyx_t_343 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_343, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3237: I[i, j] = Io
__pyx_t_344 = __pyx_v_i;
__pyx_t_345 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_344, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_345, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3238: Col[i, j, 2] = red
__pyx_t_346 = __pyx_v_i;
__pyx_t_347 = __pyx_v_j;
__pyx_t_348 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_347, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_348, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3239: Col[i, j, 1] = green
__pyx_t_349 = __pyx_v_i;
__pyx_t_350 = __pyx_v_j;
__pyx_t_351 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3240: Col[i, j, 0] = blue
__pyx_t_352 = __pyx_v_i;
__pyx_t_353 = __pyx_v_j;
__pyx_t_354 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3241: a[k] = 1
__pyx_t_355 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_355, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3242: break
goto __pyx_L114_break;
3243:
3244:
+3245: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3246: if I[i + 1, j] == Io:
__pyx_t_356 = (__pyx_v_i + 1);
__pyx_t_357 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_356, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_357, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3247: I[i, j] = Io
__pyx_t_358 = __pyx_v_i;
__pyx_t_359 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_358, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_359, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3248: Col[i, j, 2] = red
__pyx_t_360 = __pyx_v_i;
__pyx_t_361 = __pyx_v_j;
__pyx_t_362 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_360, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_361, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_362, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3249: Col[i, j, 1] = green
__pyx_t_363 = __pyx_v_i;
__pyx_t_364 = __pyx_v_j;
__pyx_t_365 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_363, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3250: Col[i, j, 0] = blue
__pyx_t_366 = __pyx_v_i;
__pyx_t_367 = __pyx_v_j;
__pyx_t_368 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3251: a[k] = 1
__pyx_t_369 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_369, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3252: break
goto __pyx_L114_break;
3253:
+3254: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_87 = (__pyx_v_jmin - 1);
for (__pyx_t_86 = (__pyx_v_jo - 1); __pyx_t_86 > __pyx_t_87; __pyx_t_86-=1) {
__pyx_v_j = __pyx_t_86;
+3255: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3256: if II[i, j] == Io:
__pyx_t_370 = __pyx_v_i;
__pyx_t_371 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_371, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L127_break:;
}
}
+3257: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3258: if I[i - 1, j] == Io:
__pyx_t_372 = (__pyx_v_i - 1);
__pyx_t_373 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_372, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_373, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3259: I[i, j] = Io
__pyx_t_374 = __pyx_v_i;
__pyx_t_375 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_375, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3260: Col[i, j, 2] = red
__pyx_t_376 = __pyx_v_i;
__pyx_t_377 = __pyx_v_j;
__pyx_t_378 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_376, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_377, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3261: Col[i, j, 1] = green
__pyx_t_379 = __pyx_v_i;
__pyx_t_380 = __pyx_v_j;
__pyx_t_381 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3262: Col[i, j, 0] = blue
__pyx_t_382 = __pyx_v_i;
__pyx_t_383 = __pyx_v_j;
__pyx_t_384 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_383, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3263: a[k] = 1
__pyx_t_385 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_385, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3264: break
goto __pyx_L127_break;
+3265: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3266: if I[i, j - 1] == Io:
__pyx_t_386 = __pyx_v_i;
__pyx_t_387 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_386, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_387, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3267: I[i, j] = Io
__pyx_t_388 = __pyx_v_i;
__pyx_t_389 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_389, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3268: Col[i, j, 2] = red
__pyx_t_390 = __pyx_v_i;
__pyx_t_391 = __pyx_v_j;
__pyx_t_392 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_390, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_391, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3269: Col[i, j, 1] = green
__pyx_t_393 = __pyx_v_i;
__pyx_t_394 = __pyx_v_j;
__pyx_t_395 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3270: Col[i, j, 0] = blue
__pyx_t_396 = __pyx_v_i;
__pyx_t_397 = __pyx_v_j;
__pyx_t_398 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_397, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_398, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3271: a[k] = 1
__pyx_t_399 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_399, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3272: break
goto __pyx_L127_break;
3273:
+3274: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3275: if I[i, j + 1] == Io:
__pyx_t_400 = __pyx_v_i;
__pyx_t_401 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_400, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_401, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3276: I[i, j] = Io
__pyx_t_402 = __pyx_v_i;
__pyx_t_403 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_402, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_403, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3277: Col[i, j, 2] = red
__pyx_t_404 = __pyx_v_i;
__pyx_t_405 = __pyx_v_j;
__pyx_t_406 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_404, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_405, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_406, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3278: Col[i, j, 1] = green
__pyx_t_407 = __pyx_v_i;
__pyx_t_408 = __pyx_v_j;
__pyx_t_409 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_407, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_408, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_409, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3279: Col[i, j, 0] = blue
__pyx_t_410 = __pyx_v_i;
__pyx_t_411 = __pyx_v_j;
__pyx_t_412 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_410, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_411, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_412, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3280: a[k] = 1
__pyx_t_413 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_413, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3281: break
goto __pyx_L127_break;
3282:
3283:
+3284: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3285: if I[i + 1, j] == Io:
__pyx_t_414 = (__pyx_v_i + 1);
__pyx_t_415 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_414, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_415, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3286: I[i, j] = Io
__pyx_t_416 = __pyx_v_i;
__pyx_t_417 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_416, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_417, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3287: Col[i, j, 2] = red
__pyx_t_418 = __pyx_v_i;
__pyx_t_419 = __pyx_v_j;
__pyx_t_420 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_418, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_419, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_420, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3288: Col[i, j, 1] = green
__pyx_t_421 = __pyx_v_i;
__pyx_t_422 = __pyx_v_j;
__pyx_t_423 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_421, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_422, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3289: Col[i, j, 0] = blue
__pyx_t_424 = __pyx_v_i;
__pyx_t_425 = __pyx_v_j;
__pyx_t_426 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_425, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_426, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3290: a[k] = 1
__pyx_t_427 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_427, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3291: break
goto __pyx_L127_break;
3292:
3293:
3294:
+3295: for i in range(imin, io, -1):
__pyx_t_71 = __pyx_v_io;
for (__pyx_t_70 = __pyx_v_imin; __pyx_t_70 > __pyx_t_71; __pyx_t_70-=1) {
__pyx_v_i = __pyx_t_70;
+3296: for j in range(jo, jmax + 1):
__pyx_t_87 = (__pyx_v_jmax + 1);
for (__pyx_t_86 = __pyx_v_jo; __pyx_t_86 < __pyx_t_87; __pyx_t_86+=1) {
__pyx_v_j = __pyx_t_86;
+3297: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3298: if II[i, j] == Io:
__pyx_t_428 = __pyx_v_i;
__pyx_t_429 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_428, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_429, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L142_break:;
}
+3299: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3300: if I[i - 1, j] == Io:
__pyx_t_430 = (__pyx_v_i - 1);
__pyx_t_431 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_430, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_431, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3301: I[i, j] = Io
__pyx_t_432 = __pyx_v_i;
__pyx_t_433 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_432, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_433, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3302: Col[i, j, 2] = red
__pyx_t_434 = __pyx_v_i;
__pyx_t_435 = __pyx_v_j;
__pyx_t_436 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_434, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_435, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_436, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3303: Col[i, j, 1] = green
__pyx_t_437 = __pyx_v_i;
__pyx_t_438 = __pyx_v_j;
__pyx_t_439 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_439, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3304: Col[i, j, 0] = blue
__pyx_t_440 = __pyx_v_i;
__pyx_t_441 = __pyx_v_j;
__pyx_t_442 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_440, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3305: a[k] = 1
__pyx_t_443 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_443, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3306: break
goto __pyx_L142_break;
+3307: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3308: if I[i, j - 1] == Io:
__pyx_t_444 = __pyx_v_i;
__pyx_t_445 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_444, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_445, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3309: I[i, j] = Io
__pyx_t_446 = __pyx_v_i;
__pyx_t_447 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_446, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_447, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3310: Col[i, j, 2] = red
__pyx_t_448 = __pyx_v_i;
__pyx_t_449 = __pyx_v_j;
__pyx_t_450 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_448, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_449, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_450, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3311: Col[i, j, 1] = green
__pyx_t_451 = __pyx_v_i;
__pyx_t_452 = __pyx_v_j;
__pyx_t_453 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_451, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_452, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_453, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3312: Col[i, j, 0] = blue
__pyx_t_454 = __pyx_v_i;
__pyx_t_455 = __pyx_v_j;
__pyx_t_456 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_454, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3313: a[k] = 1
__pyx_t_457 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_457, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3314: break
goto __pyx_L142_break;
3315:
+3316: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3317: if I[i, j + 1] == Io:
__pyx_t_458 = __pyx_v_i;
__pyx_t_459 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_458, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_459, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3318: I[i, j] = Io
__pyx_t_460 = __pyx_v_i;
__pyx_t_461 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_460, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_461, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3319: Col[i, j, 2] = red
__pyx_t_462 = __pyx_v_i;
__pyx_t_463 = __pyx_v_j;
__pyx_t_464 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_462, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_463, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_464, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3320: Col[i, j, 1] = green
__pyx_t_465 = __pyx_v_i;
__pyx_t_466 = __pyx_v_j;
__pyx_t_467 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_465, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_466, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_467, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3321: Col[i, j, 0] = blue
__pyx_t_468 = __pyx_v_i;
__pyx_t_469 = __pyx_v_j;
__pyx_t_470 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_468, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_469, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_470, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3322: a[k] = 1
__pyx_t_471 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_471, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3323: break
goto __pyx_L142_break;
3324:
3325:
+3326: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3327: if I[i + 1, j] == Io:
__pyx_t_472 = (__pyx_v_i + 1);
__pyx_t_473 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_472, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_473, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3328: I[i, j] = Io
__pyx_t_474 = __pyx_v_i;
__pyx_t_475 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_474, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_475, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3329: Col[i, j, 2] = red
__pyx_t_476 = __pyx_v_i;
__pyx_t_477 = __pyx_v_j;
__pyx_t_478 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_476, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_477, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_478, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3330: Col[i, j, 1] = green
__pyx_t_479 = __pyx_v_i;
__pyx_t_480 = __pyx_v_j;
__pyx_t_481 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_479, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_480, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_481, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3331: Col[i, j, 0] = blue
__pyx_t_482 = __pyx_v_i;
__pyx_t_483 = __pyx_v_j;
__pyx_t_484 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_482, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_483, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_484, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3332: a[k] = 1
__pyx_t_485 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_485, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3333: break
goto __pyx_L142_break;
3334:
+3335: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_87 = (__pyx_v_jmin - 1);
for (__pyx_t_86 = (__pyx_v_jo - 1); __pyx_t_86 > __pyx_t_87; __pyx_t_86-=1) {
__pyx_v_j = __pyx_t_86;
+3336: for dum in range(1):
for (__pyx_t_88 = 0; __pyx_t_88 < 1; __pyx_t_88+=1) {
__pyx_v_dum = __pyx_t_88;
+3337: if II[i, j] == Io:
__pyx_t_486 = __pyx_v_i;
__pyx_t_487 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_486, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_487, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L155_break:;
}
}
+3338: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3339: if I[i - 1, j] == Io:
__pyx_t_488 = (__pyx_v_i - 1);
__pyx_t_489 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_488, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_489, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3340: I[i, j] = Io
__pyx_t_490 = __pyx_v_i;
__pyx_t_491 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_490, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_491, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3341: Col[i, j, 2] = red
__pyx_t_492 = __pyx_v_i;
__pyx_t_493 = __pyx_v_j;
__pyx_t_494 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_492, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_493, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_494, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3342: Col[i, j, 1] = green
__pyx_t_495 = __pyx_v_i;
__pyx_t_496 = __pyx_v_j;
__pyx_t_497 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_495, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_496, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_497, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3343: Col[i, j, 0] = blue
__pyx_t_498 = __pyx_v_i;
__pyx_t_499 = __pyx_v_j;
__pyx_t_500 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_498, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_499, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_500, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3344: a[k] = 1
__pyx_t_501 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_501, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3345: break
goto __pyx_L155_break;
+3346: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3347: if I[i, j - 1] == Io:
__pyx_t_502 = __pyx_v_i;
__pyx_t_503 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_502, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_503, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3348: I[i, j] = Io
__pyx_t_504 = __pyx_v_i;
__pyx_t_505 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_504, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_505, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3349: Col[i, j, 2] = red
__pyx_t_506 = __pyx_v_i;
__pyx_t_507 = __pyx_v_j;
__pyx_t_508 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_506, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_507, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_508, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3350: Col[i, j, 1] = green
__pyx_t_509 = __pyx_v_i;
__pyx_t_510 = __pyx_v_j;
__pyx_t_511 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_509, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_510, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_511, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3351: Col[i, j, 0] = blue
__pyx_t_512 = __pyx_v_i;
__pyx_t_513 = __pyx_v_j;
__pyx_t_514 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_512, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_513, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_514, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3352: a[k] = 1
__pyx_t_515 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_515, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3353: break
goto __pyx_L155_break;
3354:
+3355: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3356: if I[i, j + 1] == Io:
__pyx_t_516 = __pyx_v_i;
__pyx_t_517 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_516, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_517, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3357: I[i, j] = Io
__pyx_t_518 = __pyx_v_i;
__pyx_t_519 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_518, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_519, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3358: Col[i, j, 2] = red
__pyx_t_520 = __pyx_v_i;
__pyx_t_521 = __pyx_v_j;
__pyx_t_522 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_520, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_521, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_522, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3359: Col[i, j, 1] = green
__pyx_t_523 = __pyx_v_i;
__pyx_t_524 = __pyx_v_j;
__pyx_t_525 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_523, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_524, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_525, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3360: Col[i, j, 0] = blue
__pyx_t_526 = __pyx_v_i;
__pyx_t_527 = __pyx_v_j;
__pyx_t_528 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_526, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_527, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_528, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3361: a[k] = 1
__pyx_t_529 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_529, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3362: break
goto __pyx_L155_break;
3363:
3364:
+3365: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3366: if I[i + 1, j] == Io:
__pyx_t_530 = (__pyx_v_i + 1);
__pyx_t_531 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_530, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_531, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3367: I[i, j] = Io
__pyx_t_532 = __pyx_v_i;
__pyx_t_533 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_532, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_533, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3368: Col[i, j, 2] = red
__pyx_t_534 = __pyx_v_i;
__pyx_t_535 = __pyx_v_j;
__pyx_t_536 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_534, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_535, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_536, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3369: Col[i, j, 1] = green
__pyx_t_537 = __pyx_v_i;
__pyx_t_538 = __pyx_v_j;
__pyx_t_539 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_537, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_538, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_539, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3370: Col[i, j, 0] = blue
__pyx_t_540 = __pyx_v_i;
__pyx_t_541 = __pyx_v_j;
__pyx_t_542 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_540, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_541, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_542, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3371: a[k] = 1
__pyx_t_543 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_543, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3372: break
goto __pyx_L155_break;
3373:
3374:
+3375: if a[k] == 0:
__pyx_t_71 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3376: xmin = max(0, xo - MAJceil)
__pyx_t_70 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_544 = 0;
if (((__pyx_t_70 > __pyx_t_544) != 0)) {
__pyx_t_87 = __pyx_t_70;
} else {
__pyx_t_87 = __pyx_t_544;
}
__pyx_v_xmin = __pyx_t_87;
+3377: xmax = min(m - 1, xo + MAJceil)
__pyx_t_87 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_70 = (__pyx_v_m - 1);
if (((__pyx_t_87 < __pyx_t_70) != 0)) {
__pyx_t_86 = __pyx_t_87;
} else {
__pyx_t_86 = __pyx_t_70;
}
__pyx_v_xmax = __pyx_t_86;
+3378: ymin = max(0, yo - MINceil)
__pyx_t_86 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_544 = 0;
if (((__pyx_t_86 > __pyx_t_544) != 0)) {
__pyx_t_87 = __pyx_t_86;
} else {
__pyx_t_87 = __pyx_t_544;
}
__pyx_v_ymin = __pyx_t_87;
+3379: ymax = min(n - 1, yo + MINceil)
__pyx_t_87 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_86 = (__pyx_v_n - 1);
if (((__pyx_t_87 < __pyx_t_86) != 0)) {
__pyx_t_70 = __pyx_t_87;
} else {
__pyx_t_70 = __pyx_t_86;
}
__pyx_v_ymax = __pyx_t_70;
+3380: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_70 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
3381:
+3382: showriteframe(sa, sf, fd, MAJceil, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_MAJceil, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+3383: MAJ = MAJ + 1.0
__pyx_v_MAJ = (__pyx_v_MAJ + 1.0);
}
+3384: if asy == 0:
__pyx_t_21 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3385: break
goto __pyx_L12_break;
3386: else:
+3387: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_25 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_25); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3387, __pyx_L1_error)
__pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_all); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_25 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
}
}
if (__pyx_t_25) {
__pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3387, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
} else {
__pyx_t_23 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3387, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyInt_EqObjC(__pyx_t_23, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3387, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 3387, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (__pyx_t_21) {
/* … */
}
+3388: break
goto __pyx_L12_break;
3389: else:
+3390: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3390, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+3391: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_25); __pyx_t_6 = 0; __pyx_t_25 = 0; __pyx_t_25 = PyTuple_New(1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_25, __pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3391, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3391, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3391, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+3392: II = np.zeros((m, n), dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_23 = PyTuple_New(2); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_23, 1, __pyx_t_25); __pyx_t_4 = 0; __pyx_t_25 = 0; __pyx_t_25 = PyTuple_New(1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = PyDict_New(); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_23, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, __pyx_t_23); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3392, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3392, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_v_II, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3392, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_II, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+3393: a = np.ones(p, dtype=np.int8)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ones); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = PyTuple_New(1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_25, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3393, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3393, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3393, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+3394: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_centroids); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_23 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_24 = 1; } } __pyx_t_5 = PyTuple_New(4+__pyx_t_24); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_24, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_24, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_24, __pyx_t_23); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_24, __pyx_t_7); __pyx_t_6 = 0; __pyx_t_23 = 0; __pyx_t_7 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 3394, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_25 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_25 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_25 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3394, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_25 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_25)) goto __pyx_L168_unpacking_failed; __Pyx_GOTREF(__pyx_t_25); index = 1; __pyx_t_5 = __pyx_t_22(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L168_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_7), 2) < 0) __PYX_ERR(0, 3394, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L169_unpacking_done; __pyx_L168_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 3394, __pyx_L1_error) __pyx_L169_unpacking_done:; } if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3394, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3394, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3394, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 3394, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+3395: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
+3396: toc = time.time()
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3396, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3396, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (__pyx_t_5) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3396, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_25); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3396, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 3396, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_toc = __pyx_t_20;
+3397: obj.exetime = toc - tic
__pyx_t_4 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 3397, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_4) < 0) __PYX_ERR(0, 3397, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+3398: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 3398, __pyx_L1_error)
+3399: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 3399, __pyx_L1_error)
+3400: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 3400, __pyx_L1_error)
+3401: obj.Rvalues = Rval
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Rvalues, ((PyObject *)__pyx_v_Rval)) < 0) __PYX_ERR(0, 3401, __pyx_L1_error)
+3402: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 3402, __pyx_L1_error)
+3403: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
3404:
3405:
+3406: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_33Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_33Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_33Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_33Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_32Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_32Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_R;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_MAJ;
float __pyx_v_MIN;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_25);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__43 = PyTuple_Pack(54, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_R, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Thetafunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_countim, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_Iter, __pyx_n_s_MAJ, __pyx_n_s_MIN, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 3406, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__43);
__Pyx_GIVEREF(__pyx_tuple__43);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_33Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3406, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_7, __pyx_t_2) < 0) __PYX_ERR(0, 3406, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__44 = (PyObject*)__Pyx_PyCode_New(1, 0, 54, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__43, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_7, 3406, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__44)) __PYX_ERR(0, 3406, __pyx_L1_error)
3407:
3408: # Grabbing data from the input object
+3409: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3409, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3409, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+3410: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3410, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3410, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+3411: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3411, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3411, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+3412: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3412, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+3413: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3413, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3413, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+3414: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3414, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 3414, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+3415: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3415, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3415, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+3416: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3416, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 3416, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+3417: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3417, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 3417, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_4;
+3418: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3418, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 3418, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_4;
+3419: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3419, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+3420: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3420, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+3421: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3421, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
3422:
3423:
3424: # Declaring other variables
3425: cdef double tic, toc
3426: cdef long long deli, delj, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, dum, countim, i, j, k, xo, yo, delX, delY, Iter
3427: cdef float MAJ, MIN, theta, c, s, red, green, blue
+3428: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3428, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3428, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3428, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+3429: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3429, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3429, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3429, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+3430: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3430, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3430, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3430, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+3431: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3431, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3431, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3431, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+3432: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3432, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3432, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3432, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+3433: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(p, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3433, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3433, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3433, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+3434: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3434, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3434, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3434, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_15 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+3435: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3435, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3435, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3435, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_16 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+3436: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3436, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3436, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3436, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3436, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3436, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+3437: col = np.random.random((p, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3437, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3437, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3437, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+3438: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3438, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3438, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_6) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3438, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3438, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 3438, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_tic = __pyx_t_20;
3439:
+3440: if pdelNxy == []:
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3440, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3440, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 3440, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_21) { /* … */ goto __pyx_L3; }
+3441: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 3441, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_8 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3441, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_8)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_22(__pyx_t_8); if (unlikely(!__pyx_t_1)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_6 = __pyx_t_22(__pyx_t_8); if (unlikely(!__pyx_t_6)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_8), 2) < 0) __PYX_ERR(0, 3441, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 3441, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3441, __pyx_L1_error)
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3441, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3441, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_6);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3441, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6));
__pyx_t_6 = 0;
3442: else:
+3443: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_23 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_23 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_23)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_24 = 1;
}
}
__pyx_t_25 = PyTuple_New(7+__pyx_t_24); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_23) {
__Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_23); __pyx_t_23 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_24, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_24, __pyx_t_6);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_24, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_24, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 5+__pyx_t_24, __pyx_t_5);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 6+__pyx_t_24, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_8 = 0;
__pyx_t_5 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 3443, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_25 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_25 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_25);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_25 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_5 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3443, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_22 = Py_TYPE(__pyx_t_5)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_22(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_25 = __pyx_t_22(__pyx_t_5); if (unlikely(!__pyx_t_25)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_25);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_5), 2) < 0) __PYX_ERR(0, 3443, __pyx_L1_error)
__pyx_t_22 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_22 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 3443, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3443, __pyx_L1_error)
if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3443, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3443, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_25);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3443, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_25));
__pyx_t_25 = 0;
}
__pyx_L3:;
3444:
+3445: if labelsorted == 1:
__pyx_t_21 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_21) {
/* … */
}
+3446: X, Y = labelsort(n, X, Y)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_24 = 1; } } __pyx_t_8 = PyTuple_New(3+__pyx_t_24); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_24, __pyx_t_1); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_24, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_24, ((PyObject *)__pyx_v_Y)); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 3446, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_25 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_8 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_25 = PyList_GET_ITEM(sequence, 0); __pyx_t_8 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(__pyx_t_8); #else __pyx_t_25 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3446, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_1)->tp_iternext; index = 0; __pyx_t_25 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_25)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_25); index = 1; __pyx_t_8 = __pyx_t_22(__pyx_t_1); if (unlikely(!__pyx_t_8)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_8); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_1), 2) < 0) __PYX_ERR(0, 3446, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 3446, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3446, __pyx_L1_error) if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3446, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_25); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3446, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_25)); __pyx_t_25 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3446, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
3447:
3448:
+3449: Iter = 1
__pyx_v_Iter = 1;
3450:
+3451: while True:
while (1) {
3452:
+3453: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+3454: I[X[k], Y[k]] = k + 1
__pyx_t_27 = __pyx_v_k;
__pyx_t_28 = __pyx_v_k;
__pyx_t_29 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_30 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+3455: Theta[k] = Thetafunc(X[k], Y[k], k + 1 , 1, 1)
__pyx_t_31 = __pyx_v_k;
__pyx_t_8 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_32 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_5 = __pyx_v_Thetafunc; __pyx_t_6 = NULL;
__pyx_t_24 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
__pyx_t_24 = 1;
}
}
__pyx_t_23 = PyTuple_New(5+__pyx_t_24); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_6); __pyx_t_6 = NULL;
}
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_24, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_24, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_24, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_23, 3+__pyx_t_24, __pyx_int_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_23, 4+__pyx_t_24, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_25 = 0;
__pyx_t_1 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_23, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3455, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_33 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_33 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 3455, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_34 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_33;
+3456: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = 0;
__pyx_t_37 = __pyx_v_k;
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_40 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_col.diminfo[1].strides));
+3457: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_42 = __pyx_v_k;
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_k;
__pyx_t_45 = __pyx_v_k;
__pyx_t_46 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_47 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_48 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+3458: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_49 = __pyx_v_k;
__pyx_t_50 = 2;
__pyx_t_51 = __pyx_v_k;
__pyx_t_52 = __pyx_v_k;
__pyx_t_53 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_54 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_55 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_col.diminfo[1].strides));
}
3459:
+3460: showriteframe(sa, sf, fd, 0, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, 0, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+3461: MAJ = 1.0
__pyx_v_MAJ = 1.0;
+3462: MIN = MAJ / R
__pyx_v_MIN = (__pyx_v_MAJ / __pyx_v_R);
3463:
+3464: countim = 0
__pyx_v_countim = 0;
+3465: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3465, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3465, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_5) {
__pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3465, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
} else {
__pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3465, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3465, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_7, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3465, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 3465, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_21) break;
+3466: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
+3467: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_26 = 0; __pyx_t_26 < __pyx_t_2; __pyx_t_26+=1) {
__pyx_v_k = __pyx_t_26;
+3468: if a[k] == 1:
__pyx_t_56 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_21) {
/* … */
}
}
+3469: a[k] = 0
__pyx_t_57 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+3470: xo = X[k]
__pyx_t_58 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_X.diminfo[0].strides));
+3471: yo = Y[k]
__pyx_t_59 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_Y.diminfo[0].strides));
+3472: theta = Theta[k]
__pyx_t_60 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Theta.diminfo[0].strides));
+3473: c = math.cos(theta)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_cos); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_5) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3473, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_25, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_23); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 3473, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_c = __pyx_t_3;
+3474: s = -math.sin(theta)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sin); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_7) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_5, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyNumber_Negative(__pyx_t_23); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_25); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 3474, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_v_s = __pyx_t_3;
+3475: Io = I[xo, yo]
__pyx_t_61 = __pyx_v_xo;
__pyx_t_62 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_62, __pyx_pybuffernd_I.diminfo[1].strides));
+3476: delX = math.ceil(math.sqrt((MAJ * c) ** 2 + (MIN * s) ** 2))
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_ceil); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble((powf((__pyx_v_MAJ * __pyx_v_c), 2.0) + powf((__pyx_v_MIN * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_8) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_23); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_GOTREF(__pyx_t_25); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_63 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_25); if (unlikely((__pyx_t_63 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3476, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_v_delX = __pyx_t_63;
+3477: delY = math.ceil(math.sqrt((MAJ * s) ** 2 + (MIN * c) ** 2))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ceil); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = PyFloat_FromDouble((powf((__pyx_v_MAJ * __pyx_v_s), 2.0) + powf((__pyx_v_MIN * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_23); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_25); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_63 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_25); if (unlikely((__pyx_t_63 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3477, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_v_delY = __pyx_t_63;
+3478: red = col[k, 0]
__pyx_t_63 = __pyx_v_k;
__pyx_t_64 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_col.diminfo[1].strides));
+3479: green = col[k, 1]
__pyx_t_65 = __pyx_v_k;
__pyx_t_66 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_col.diminfo[1].strides));
+3480: blue = col[k, 2]
__pyx_t_67 = __pyx_v_k;
__pyx_t_68 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_col.diminfo[1].strides));
3481:
+3482: for deli in range(0, delX + 1):
__pyx_t_69 = (__pyx_v_delX + 1);
for (__pyx_t_70 = 0; __pyx_t_70 < __pyx_t_69; __pyx_t_70+=1) {
__pyx_v_deli = __pyx_t_70;
+3483: for delj in range(0, delY + 1):
__pyx_t_71 = (__pyx_v_delY + 1);
for (__pyx_t_72 = 0; __pyx_t_72 < __pyx_t_71; __pyx_t_72+=1) {
__pyx_v_delj = __pyx_t_72;
+3484: if ((deli * c - delj * s) / MAJ) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_21 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_MAJ), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_21) {
/* … */
}
}
}
3485:
+3486: i, j = xo + deli, yo + delj
__pyx_t_73 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_74 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_73;
__pyx_v_j = __pyx_t_74;
+3487: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_75 = (0 <= __pyx_v_i);
if (__pyx_t_75) {
__pyx_t_75 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_76 = (__pyx_t_75 != 0);
if (__pyx_t_76) {
} else {
__pyx_t_21 = __pyx_t_76;
goto __pyx_L26_bool_binop_done;
}
__pyx_t_76 = (0 <= __pyx_v_j);
if (__pyx_t_76) {
__pyx_t_76 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_75 = (__pyx_t_76 != 0);
__pyx_t_21 = __pyx_t_75;
__pyx_L26_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+3488: if I[i, j] == 0:
__pyx_t_74 = __pyx_v_i;
__pyx_t_73 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3489: for dum in range(1):
for (__pyx_t_77 = 0; __pyx_t_77 < 1; __pyx_t_77+=1) {
__pyx_v_dum = __pyx_t_77;
3490:
+3491: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3492: if I[i - 1, j] == Io:
__pyx_t_78 = (__pyx_v_i - 1);
__pyx_t_79 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_79, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3493: I[i, j] = Io
__pyx_t_80 = __pyx_v_i;
__pyx_t_81 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3494: Col[i, j, 2] = red
__pyx_t_82 = __pyx_v_i;
__pyx_t_83 = __pyx_v_j;
__pyx_t_84 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_83, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_84, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3495: Col[i, j, 1] = green
__pyx_t_85 = __pyx_v_i;
__pyx_t_86 = __pyx_v_j;
__pyx_t_87 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_87, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3496: Col[i, j, 0] = blue
__pyx_t_88 = __pyx_v_i;
__pyx_t_89 = __pyx_v_j;
__pyx_t_90 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_90, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3497: a[k] = 1
__pyx_t_91 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3498: break
goto __pyx_L30_break;
+3499: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3500: if I[i, j - 1] == Io:
__pyx_t_92 = __pyx_v_i;
__pyx_t_93 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3501: I[i, j] = Io
__pyx_t_94 = __pyx_v_i;
__pyx_t_95 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_95, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3502: Col[i, j, 2] = red
__pyx_t_96 = __pyx_v_i;
__pyx_t_97 = __pyx_v_j;
__pyx_t_98 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3503: Col[i, j, 1] = green
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = __pyx_v_j;
__pyx_t_101 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3504: Col[i, j, 0] = blue
__pyx_t_102 = __pyx_v_i;
__pyx_t_103 = __pyx_v_j;
__pyx_t_104 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3505: a[k] = 1
__pyx_t_105 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3506: break
goto __pyx_L30_break;
3507:
+3508: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3509: if I[i, j + 1] == Io:
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3510: I[i, j] = Io
__pyx_t_108 = __pyx_v_i;
__pyx_t_109 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3511: Col[i, j, 2] = red
__pyx_t_110 = __pyx_v_i;
__pyx_t_111 = __pyx_v_j;
__pyx_t_112 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3512: Col[i, j, 1] = green
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
__pyx_t_115 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3513: Col[i, j, 0] = blue
__pyx_t_116 = __pyx_v_i;
__pyx_t_117 = __pyx_v_j;
__pyx_t_118 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3514: a[k] = 1
__pyx_t_119 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3515: break
goto __pyx_L30_break;
3516:
3517:
+3518: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L30_break:;
+3519: if I[i + 1, j] == Io:
__pyx_t_120 = (__pyx_v_i + 1);
__pyx_t_121 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_121, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3520: I[i, j] = Io
__pyx_t_122 = __pyx_v_i;
__pyx_t_123 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3521: Col[i, j, 2] = red
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_126 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3522: Col[i, j, 1] = green
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
__pyx_t_129 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3523: Col[i, j, 0] = blue
__pyx_t_130 = __pyx_v_i;
__pyx_t_131 = __pyx_v_j;
__pyx_t_132 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3524: a[k] = 1
__pyx_t_133 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3525: break
goto __pyx_L30_break;
3526:
3527:
+3528: i, j = xo - deli, yo - delj
__pyx_t_77 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_134 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_77;
__pyx_v_j = __pyx_t_134;
+3529: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_75 = (0 <= __pyx_v_i);
if (__pyx_t_75) {
__pyx_t_75 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_76 = (__pyx_t_75 != 0);
if (__pyx_t_76) {
} else {
__pyx_t_21 = __pyx_t_76;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_76 = (0 <= __pyx_v_j);
if (__pyx_t_76) {
__pyx_t_76 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_75 = (__pyx_t_76 != 0);
__pyx_t_21 = __pyx_t_75;
__pyx_L40_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+3530: if I[i, j] == 0:
__pyx_t_134 = __pyx_v_i;
__pyx_t_77 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_77, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3531: for dum in range(1):
for (__pyx_t_135 = 0; __pyx_t_135 < 1; __pyx_t_135+=1) {
__pyx_v_dum = __pyx_t_135;
3532:
+3533: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3534: if I[i - 1, j] == Io:
__pyx_t_136 = (__pyx_v_i - 1);
__pyx_t_137 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_136, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_137, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3535: I[i, j] = Io
__pyx_t_138 = __pyx_v_i;
__pyx_t_139 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_139, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3536: Col[i, j, 2] = red
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3537: Col[i, j, 1] = green
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3538: Col[i, j, 0] = blue
__pyx_t_146 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_148 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_148, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3539: a[k] = 1
__pyx_t_149 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3540: break
goto __pyx_L44_break;
+3541: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3542: if I[i, j - 1] == Io:
__pyx_t_150 = __pyx_v_i;
__pyx_t_151 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_151, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3543: I[i, j] = Io
__pyx_t_152 = __pyx_v_i;
__pyx_t_153 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_153, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3544: Col[i, j, 2] = red
__pyx_t_154 = __pyx_v_i;
__pyx_t_155 = __pyx_v_j;
__pyx_t_156 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_156, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3545: Col[i, j, 1] = green
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_159 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3546: Col[i, j, 0] = blue
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = __pyx_v_j;
__pyx_t_162 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3547: a[k] = 1
__pyx_t_163 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3548: break
goto __pyx_L44_break;
3549:
+3550: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3551: if I[i, j + 1] == Io:
__pyx_t_164 = __pyx_v_i;
__pyx_t_165 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3552: I[i, j] = Io
__pyx_t_166 = __pyx_v_i;
__pyx_t_167 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_167, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3553: Col[i, j, 2] = red
__pyx_t_168 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_170 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3554: Col[i, j, 1] = green
__pyx_t_171 = __pyx_v_i;
__pyx_t_172 = __pyx_v_j;
__pyx_t_173 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3555: Col[i, j, 0] = blue
__pyx_t_174 = __pyx_v_i;
__pyx_t_175 = __pyx_v_j;
__pyx_t_176 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_176, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3556: a[k] = 1
__pyx_t_177 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3557: break
goto __pyx_L44_break;
3558:
3559:
+3560: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L44_break:;
+3561: if I[i + 1, j] == Io:
__pyx_t_178 = (__pyx_v_i + 1);
__pyx_t_179 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_178, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_179, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3562: I[i, j] = Io
__pyx_t_180 = __pyx_v_i;
__pyx_t_181 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_180, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_181, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3563: Col[i, j, 2] = red
__pyx_t_182 = __pyx_v_i;
__pyx_t_183 = __pyx_v_j;
__pyx_t_184 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3564: Col[i, j, 1] = green
__pyx_t_185 = __pyx_v_i;
__pyx_t_186 = __pyx_v_j;
__pyx_t_187 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3565: Col[i, j, 0] = blue
__pyx_t_188 = __pyx_v_i;
__pyx_t_189 = __pyx_v_j;
__pyx_t_190 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3566: a[k] = 1
__pyx_t_191 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3567: break
goto __pyx_L44_break;
3568:
3569:
+3570: for deli in range(0, -delX - 1, -1):
__pyx_t_69 = ((-__pyx_v_delX) - 1);
for (__pyx_t_70 = 0; __pyx_t_70 > __pyx_t_69; __pyx_t_70-=1) {
__pyx_v_deli = __pyx_t_70;
+3571: for delj in range(0, delY + 1):
__pyx_t_71 = (__pyx_v_delY + 1);
for (__pyx_t_72 = 0; __pyx_t_72 < __pyx_t_71; __pyx_t_72+=1) {
__pyx_v_delj = __pyx_t_72;
+3572: if ((deli * c - delj * s) / MAJ) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_21 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_MAJ), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_21) {
/* … */
}
}
}
3573:
+3574: i, j = xo + deli, yo + delj
__pyx_t_135 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_192 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_135;
__pyx_v_j = __pyx_t_192;
+3575: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_75 = (0 <= __pyx_v_i);
if (__pyx_t_75) {
__pyx_t_75 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_76 = (__pyx_t_75 != 0);
if (__pyx_t_76) {
} else {
__pyx_t_21 = __pyx_t_76;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_76 = (0 <= __pyx_v_j);
if (__pyx_t_76) {
__pyx_t_76 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_75 = (__pyx_t_76 != 0);
__pyx_t_21 = __pyx_t_75;
__pyx_L59_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+3576: if I[i, j] == 0:
__pyx_t_192 = __pyx_v_i;
__pyx_t_135 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_192, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_135, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3577: for dum in range(1):
for (__pyx_t_193 = 0; __pyx_t_193 < 1; __pyx_t_193+=1) {
__pyx_v_dum = __pyx_t_193;
3578:
+3579: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3580: if I[i - 1, j] == Io:
__pyx_t_194 = (__pyx_v_i - 1);
__pyx_t_195 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_194, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_195, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3581: I[i, j] = Io
__pyx_t_196 = __pyx_v_i;
__pyx_t_197 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3582: Col[i, j, 2] = red
__pyx_t_198 = __pyx_v_i;
__pyx_t_199 = __pyx_v_j;
__pyx_t_200 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3583: Col[i, j, 1] = green
__pyx_t_201 = __pyx_v_i;
__pyx_t_202 = __pyx_v_j;
__pyx_t_203 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3584: Col[i, j, 0] = blue
__pyx_t_204 = __pyx_v_i;
__pyx_t_205 = __pyx_v_j;
__pyx_t_206 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3585: a[k] = 1
__pyx_t_207 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3586: break
goto __pyx_L63_break;
+3587: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3588: if I[i, j - 1] == Io:
__pyx_t_208 = __pyx_v_i;
__pyx_t_209 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_209, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3589: I[i, j] = Io
__pyx_t_210 = __pyx_v_i;
__pyx_t_211 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_210, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_211, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3590: Col[i, j, 2] = red
__pyx_t_212 = __pyx_v_i;
__pyx_t_213 = __pyx_v_j;
__pyx_t_214 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_213, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_214, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3591: Col[i, j, 1] = green
__pyx_t_215 = __pyx_v_i;
__pyx_t_216 = __pyx_v_j;
__pyx_t_217 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_216, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3592: Col[i, j, 0] = blue
__pyx_t_218 = __pyx_v_i;
__pyx_t_219 = __pyx_v_j;
__pyx_t_220 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_219, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_220, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3593: a[k] = 1
__pyx_t_221 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3594: break
goto __pyx_L63_break;
3595:
+3596: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3597: if I[i, j + 1] == Io:
__pyx_t_222 = __pyx_v_i;
__pyx_t_223 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_222, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_223, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3598: I[i, j] = Io
__pyx_t_224 = __pyx_v_i;
__pyx_t_225 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_224, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_225, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3599: Col[i, j, 2] = red
__pyx_t_226 = __pyx_v_i;
__pyx_t_227 = __pyx_v_j;
__pyx_t_228 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_228, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3600: Col[i, j, 1] = green
__pyx_t_229 = __pyx_v_i;
__pyx_t_230 = __pyx_v_j;
__pyx_t_231 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_229, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3601: Col[i, j, 0] = blue
__pyx_t_232 = __pyx_v_i;
__pyx_t_233 = __pyx_v_j;
__pyx_t_234 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3602: a[k] = 1
__pyx_t_235 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3603: break
goto __pyx_L63_break;
3604:
3605:
+3606: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L63_break:;
+3607: if I[i + 1, j] == Io:
__pyx_t_236 = (__pyx_v_i + 1);
__pyx_t_237 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_236, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_237, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3608: I[i, j] = Io
__pyx_t_238 = __pyx_v_i;
__pyx_t_239 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_238, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_239, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3609: Col[i, j, 2] = red
__pyx_t_240 = __pyx_v_i;
__pyx_t_241 = __pyx_v_j;
__pyx_t_242 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3610: Col[i, j, 1] = green
__pyx_t_243 = __pyx_v_i;
__pyx_t_244 = __pyx_v_j;
__pyx_t_245 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3611: Col[i, j, 0] = blue
__pyx_t_246 = __pyx_v_i;
__pyx_t_247 = __pyx_v_j;
__pyx_t_248 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_246, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_248, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3612: a[k] = 1
__pyx_t_249 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3613: break
goto __pyx_L63_break;
3614:
3615:
+3616: i, j = xo - deli, yo - delj
__pyx_t_193 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_250 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_193;
__pyx_v_j = __pyx_t_250;
+3617: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_75 = (0 <= __pyx_v_i);
if (__pyx_t_75) {
__pyx_t_75 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_76 = (__pyx_t_75 != 0);
if (__pyx_t_76) {
} else {
__pyx_t_21 = __pyx_t_76;
goto __pyx_L73_bool_binop_done;
}
__pyx_t_76 = (0 <= __pyx_v_j);
if (__pyx_t_76) {
__pyx_t_76 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_75 = (__pyx_t_76 != 0);
__pyx_t_21 = __pyx_t_75;
__pyx_L73_bool_binop_done:;
if (__pyx_t_21) {
/* … */
}
+3618: if I[i, j] == 0:
__pyx_t_250 = __pyx_v_i;
__pyx_t_193 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_250, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_193, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3619: for dum in range(1):
for (__pyx_t_251 = 0; __pyx_t_251 < 1; __pyx_t_251+=1) {
__pyx_v_dum = __pyx_t_251;
3620:
+3621: if i > 0:
__pyx_t_21 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3622: if I[i - 1, j] == Io:
__pyx_t_252 = (__pyx_v_i - 1);
__pyx_t_253 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_252, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_253, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3623: I[i, j] = Io
__pyx_t_254 = __pyx_v_i;
__pyx_t_255 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3624: Col[i, j, 2] = red
__pyx_t_256 = __pyx_v_i;
__pyx_t_257 = __pyx_v_j;
__pyx_t_258 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3625: Col[i, j, 1] = green
__pyx_t_259 = __pyx_v_i;
__pyx_t_260 = __pyx_v_j;
__pyx_t_261 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3626: Col[i, j, 0] = blue
__pyx_t_262 = __pyx_v_i;
__pyx_t_263 = __pyx_v_j;
__pyx_t_264 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3627: a[k] = 1
__pyx_t_265 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_265, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3628: break
goto __pyx_L77_break;
+3629: if j > 0:
__pyx_t_21 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3630: if I[i, j - 1] == Io:
__pyx_t_266 = __pyx_v_i;
__pyx_t_267 = (__pyx_v_j - 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_267, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3631: I[i, j] = Io
__pyx_t_268 = __pyx_v_i;
__pyx_t_269 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_268, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_269, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3632: Col[i, j, 2] = red
__pyx_t_270 = __pyx_v_i;
__pyx_t_271 = __pyx_v_j;
__pyx_t_272 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_272, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3633: Col[i, j, 1] = green
__pyx_t_273 = __pyx_v_i;
__pyx_t_274 = __pyx_v_j;
__pyx_t_275 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_273, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_274, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3634: Col[i, j, 0] = blue
__pyx_t_276 = __pyx_v_i;
__pyx_t_277 = __pyx_v_j;
__pyx_t_278 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_278, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3635: a[k] = 1
__pyx_t_279 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3636: break
goto __pyx_L77_break;
3637:
+3638: if j < n - 1:
__pyx_t_21 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
+3639: if I[i, j + 1] == Io:
__pyx_t_280 = __pyx_v_i;
__pyx_t_281 = (__pyx_v_j + 1);
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_280, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_281, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3640: I[i, j] = Io
__pyx_t_282 = __pyx_v_i;
__pyx_t_283 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_283, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3641: Col[i, j, 2] = red
__pyx_t_284 = __pyx_v_i;
__pyx_t_285 = __pyx_v_j;
__pyx_t_286 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_286, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3642: Col[i, j, 1] = green
__pyx_t_287 = __pyx_v_i;
__pyx_t_288 = __pyx_v_j;
__pyx_t_289 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_287, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3643: Col[i, j, 0] = blue
__pyx_t_290 = __pyx_v_i;
__pyx_t_291 = __pyx_v_j;
__pyx_t_292 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3644: a[k] = 1
__pyx_t_293 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3645: break
goto __pyx_L77_break;
3646:
3647:
+3648: if i < m - 1:
__pyx_t_21 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_21) {
/* … */
}
}
__pyx_L77_break:;
+3649: if I[i + 1, j] == Io:
__pyx_t_294 = (__pyx_v_i + 1);
__pyx_t_295 = __pyx_v_j;
__pyx_t_21 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_294, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_295, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_21) {
/* … */
}
+3650: I[i, j] = Io
__pyx_t_296 = __pyx_v_i;
__pyx_t_297 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_296, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_297, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3651: Col[i, j, 2] = red
__pyx_t_298 = __pyx_v_i;
__pyx_t_299 = __pyx_v_j;
__pyx_t_300 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3652: Col[i, j, 1] = green
__pyx_t_301 = __pyx_v_i;
__pyx_t_302 = __pyx_v_j;
__pyx_t_303 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_301, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3653: Col[i, j, 0] = blue
__pyx_t_304 = __pyx_v_i;
__pyx_t_305 = __pyx_v_j;
__pyx_t_306 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_304, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3654: a[k] = 1
__pyx_t_307 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_307, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3655: break
goto __pyx_L77_break;
3656:
3657:
3658:
+3659: if a[k] == 0:
__pyx_t_69 = __pyx_v_k;
__pyx_t_21 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3660: xmin = max(0, xo - delX)
__pyx_t_70 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_308 = 0;
if (((__pyx_t_70 > __pyx_t_308) != 0)) {
__pyx_t_71 = __pyx_t_70;
} else {
__pyx_t_71 = __pyx_t_308;
}
__pyx_v_xmin = __pyx_t_71;
+3661: xmax = min(m - 1, xo + delX)
__pyx_t_71 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_70 = (__pyx_v_m - 1);
if (((__pyx_t_71 < __pyx_t_70) != 0)) {
__pyx_t_72 = __pyx_t_71;
} else {
__pyx_t_72 = __pyx_t_70;
}
__pyx_v_xmax = __pyx_t_72;
+3662: ymin = max(0, yo - delY)
__pyx_t_72 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_308 = 0;
if (((__pyx_t_72 > __pyx_t_308) != 0)) {
__pyx_t_71 = __pyx_t_72;
} else {
__pyx_t_71 = __pyx_t_308;
}
__pyx_v_ymin = __pyx_t_71;
+3663: ymax = min(n - 1, yo + delY)
__pyx_t_71 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_72 = (__pyx_v_n - 1);
if (((__pyx_t_71 < __pyx_t_72) != 0)) {
__pyx_t_70 = __pyx_t_71;
} else {
__pyx_t_70 = __pyx_t_72;
}
__pyx_v_ymax = __pyx_t_70;
+3664: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_70 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
3665:
+3666: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+3667: MAJ = MAJ + 1.0
__pyx_v_MAJ = (__pyx_v_MAJ + 1.0);
+3668: MIN = MAJ / R
__pyx_v_MIN = (__pyx_v_MAJ / __pyx_v_R);
}
+3669: if asy == 0:
__pyx_t_21 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_21) {
/* … */
}
+3670: break
goto __pyx_L12_break;
3671: else:
+3672: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3672, __pyx_L1_error)
__pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_all); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3672, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
}
}
if (__pyx_t_6) {
__pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3672, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
__pyx_t_25 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3672, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_EqObjC(__pyx_t_25, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3672, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_21 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_21 < 0)) __PYX_ERR(0, 3672, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if (__pyx_t_21) {
/* … */
}
+3673: break
goto __pyx_L12_break;
3674: else:
+3675: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3675, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+3676: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3676, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3676, __pyx_L1_error) } __pyx_t_9 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+3677: a = np.ones(p, dtype=np.int8)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ones); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_int8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3677, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3677, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+3678: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_centroids); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_23 = NULL; __pyx_t_24 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_24 = 1; } } __pyx_t_1 = PyTuple_New(4+__pyx_t_24); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_23) { __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_23); __pyx_t_23 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_24, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_24, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_24, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_24, __pyx_t_25); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) { PyObject* sequence = __pyx_t_8; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 3678, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_6 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } else { Py_ssize_t index = -1; __pyx_t_25 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_22 = Py_TYPE(__pyx_t_25)->tp_iternext; index = 0; __pyx_t_6 = __pyx_t_22(__pyx_t_25); if (unlikely(!__pyx_t_6)) goto __pyx_L89_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); index = 1; __pyx_t_1 = __pyx_t_22(__pyx_t_25); if (unlikely(!__pyx_t_1)) goto __pyx_L89_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_22(__pyx_t_25), 2) < 0) __PYX_ERR(0, 3678, __pyx_L1_error) __pyx_t_22 = NULL; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; goto __pyx_L90_unpacking_done; __pyx_L89_unpacking_failed:; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_22 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 3678, __pyx_L1_error) __pyx_L90_unpacking_done:; } if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3678, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3678, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_17); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_17, __pyx_t_18, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3678, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_18, &__pyx_t_17); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_17); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_18, __pyx_t_17); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3678, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+3679: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
+3680: toc = time.time()
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (__pyx_t_1) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3680, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { __pyx_t_8 = __Pyx_PyObject_CallNoArg(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3680, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_20 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_20 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 3680, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_toc = __pyx_t_20;
+3681: obj.exetime = toc - tic
__pyx_t_8 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_8) < 0) __PYX_ERR(0, 3681, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+3682: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 3682, __pyx_L1_error)
+3683: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 3683, __pyx_L1_error)
+3684: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 3684, __pyx_L1_error)
+3685: obj.Thetavalues = Theta
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Thetavalues, ((PyObject *)__pyx_v_Theta)) < 0) __PYX_ERR(0, 3685, __pyx_L1_error)
+3686: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 3686, __pyx_L1_error)
+3687: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
3688:
+3689: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_35Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_35Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_35Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_35Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_34Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_34Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_R;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_imin;
PY_LONG_LONG __pyx_v_imax;
PY_LONG_LONG __pyx_v_jmin;
PY_LONG_LONG __pyx_v_jmax;
PY_LONG_LONG __pyx_v_io;
PY_LONG_LONG __pyx_v_jo;
PY_LONG_LONG __pyx_v_go;
PY_LONG_LONG __pyx_v_found;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_l1;
PY_LONG_LONG __pyx_v_l2;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_adotValmax;
float __pyx_v_tmp;
float __pyx_v_MIN;
float __pyx_v_dr;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_II = 0;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_II;
__Pyx_Buffer __pyx_pybuffer_II;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_II.pybuffer.buf = NULL;
__pyx_pybuffer_II.refcount = 0;
__pyx_pybuffernd_II.data = NULL;
__pyx_pybuffernd_II.rcbuffer = &__pyx_pybuffer_II;
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_27);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_II);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__45 = PyTuple_Pack(70, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_R, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Adotfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_MN, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_imin, __pyx_n_s_imax, __pyx_n_s_jmin, __pyx_n_s_jmax, __pyx_n_s_io, __pyx_n_s_jo, __pyx_n_s_go, __pyx_n_s_found, __pyx_n_s_dum, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_count, __pyx_n_s_l1, __pyx_n_s_l2, __pyx_n_s_countim, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_adotValmax, __pyx_n_s_tmp, __pyx_n_s_MIN, __pyx_n_s_dr, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_adotVal, __pyx_n_s_II, __pyx_n_s_MAJ, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__45)) __PYX_ERR(0, 3689, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__45);
__Pyx_GIVEREF(__pyx_tuple__45);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_35Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_without_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3689, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_8, __pyx_t_2) < 0) __PYX_ERR(0, 3689, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__46 = (PyObject*)__Pyx_PyCode_New(1, 0, 70, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__45, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_8, 3689, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__46)) __PYX_ERR(0, 3689, __pyx_L1_error)
3690:
3691: # Grabbing data from the input object
+3692: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3692, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3692, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+3693: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3693, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3693, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+3694: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3694, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3694, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+3695: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3695, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3695, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+3696: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3696, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3696, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+3697: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 3697, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+3698: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3698, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+3699: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3699, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 3699, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+3700: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3700, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 3700, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_4;
+3701: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3701, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 3701, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_4;
+3702: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3702, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+3703: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3703, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+3704: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
3705:
3706:
3707: # Declaring other variables
3708: cdef double tic, toc
3709: cdef long long deli, delj, MN, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, imin, imax, jmin, jmax, io, jo, go, found, dum, i, j, k, xo, yo, count, l1, l2, countim, MAJceil, MINceil, Iter
3710: cdef float adotValmax, tmp, MIN, dr, theta, c, s, red, green, blue
+3711: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3711, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3711, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+3712: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3712, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3712, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+3713: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3713, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3713, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3713, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+3714: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3714, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3714, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3714, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+3715: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3715, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3715, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3715, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+3716: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(p, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3716, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3716, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3716, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+3717: cdef np.ndarray[np.int_t, ndim = 2] II = np.zeros((m, n), dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3717, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_II = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_II.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3717, __pyx_L1_error) } else {__pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; } } __pyx_t_15 = 0; __pyx_v_II = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+3718: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3718, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3718, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+3719: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3719, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3719, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+3720: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3720, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 3720, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_18 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+3721: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3721, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3721, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3721, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3721, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3721, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+3722: col = np.random.random((p, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3722, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3722, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3722, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+3723: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3723, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3723, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_6) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3723, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3723, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 3723, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_tic = __pyx_t_22;
3724:
+3725: if pdelNxy == []:
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3725, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3725, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 3725, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_23) { /* … */ goto __pyx_L3; }
+3726: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 3726, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_5 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3726, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_5)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_24(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_6 = __pyx_t_24(__pyx_t_5); if (unlikely(!__pyx_t_6)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_5), 2) < 0) __PYX_ERR(0, 3726, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 3726, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3726, __pyx_L1_error)
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3726, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3726, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_6);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3726, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6));
__pyx_t_6 = 0;
3727: else:
+3728: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_27 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_27, 0+__pyx_t_26, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 1+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_27, 2+__pyx_t_26, __pyx_t_6);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_27, 4+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_27, 5+__pyx_t_26, __pyx_t_8);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_27, 6+__pyx_t_26, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_5 = 0;
__pyx_t_8 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_27, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 3728, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_27 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_27 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_27);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_27 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_8 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3728, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_8)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_24(__pyx_t_8); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_27 = __pyx_t_24(__pyx_t_8); if (unlikely(!__pyx_t_27)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_27);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_8), 2) < 0) __PYX_ERR(0, 3728, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 3728, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3728, __pyx_L1_error)
if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3728, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3728, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_27);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3728, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_27));
__pyx_t_27 = 0;
}
__pyx_L3:;
3729:
+3730: if labelsorted == 1:
__pyx_t_23 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_23) {
/* … */
}
+3731: X, Y = labelsort(n, X, Y)
__pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 3731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); __pyx_t_26 = 1; } } __pyx_t_5 = PyTuple_New(3+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_t_1); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, ((PyObject *)__pyx_v_Y)); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 3731, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_27 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_27 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_27 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 3731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_1)->tp_iternext; index = 0; __pyx_t_27 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_27)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_27); index = 1; __pyx_t_5 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_1), 2) < 0) __PYX_ERR(0, 3731, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 3731, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3731, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 3731, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3731, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 3731, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
3732:
+3733: Iter = 1
__pyx_v_Iter = 1;
+3734: while True:
while (1) {
+3735: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+3736: I[X[k], Y[k]] = k + 1
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = __pyx_v_k;
__pyx_t_31 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_32 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_32, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+3737: adotVal[k] = Adotfunc(X[k], Y[k], k + 1 , 0, 1)
__pyx_t_33 = __pyx_v_k;
__pyx_t_5 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 3737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_34 = __pyx_v_k;
__pyx_t_27 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 3737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_8 = __pyx_v_Adotfunc; __pyx_t_6 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
__pyx_t_26 = 1;
}
}
__pyx_t_25 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = NULL;
}
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_26, __pyx_t_1);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_26, __pyx_int_0);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_27 = 0;
__pyx_t_1 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3737, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 3737, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_36 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_35;
+3738: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_37 = __pyx_v_k;
__pyx_t_38 = 0;
__pyx_t_39 = __pyx_v_k;
__pyx_t_40 = __pyx_v_k;
__pyx_t_41 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_42 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_43 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_43, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_col.diminfo[1].strides));
+3739: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_44 = __pyx_v_k;
__pyx_t_45 = 1;
__pyx_t_46 = __pyx_v_k;
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_49 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_50 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_col.diminfo[1].strides));
+3740: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_51 = __pyx_v_k;
__pyx_t_52 = 2;
__pyx_t_53 = __pyx_v_k;
__pyx_t_54 = __pyx_v_k;
__pyx_t_55 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_56 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_57 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_56, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_57, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_col.diminfo[1].strides));
}
3741:
3742:
3743:
+3744: adotValmax = max(adotVal)
__pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3744, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(((PyObject *)__pyx_v_adotVal)); __Pyx_GIVEREF(((PyObject *)__pyx_v_adotVal)); PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_v_adotVal)); __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_max, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3744, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_8); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 3744, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_adotValmax = __pyx_t_3;
3745:
+3746: showriteframe(sa, sf, fd, 0, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, 0, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
3747:
+3748: countim = 1
__pyx_v_countim = 1;
+3749: count = 0
__pyx_v_count = 0;
+3750: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_25);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_25, function);
}
}
if (!__pyx_t_7) {
__pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_25, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
} else {
__pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3750, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_25 = PyObject_RichCompare(__pyx_t_8, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_25); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3750, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_25); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 3750, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
if (!__pyx_t_23) break;
3751:
3752:
+3753: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+3754: for i in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_i = __pyx_t_28;
+3755: if a[i] == 1:
__pyx_t_58 = __pyx_v_i;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+3756: tmp = adotVal[i]
__pyx_t_59 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+3757: if tmp > adotValmax:
__pyx_t_23 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_23) {
/* … */
}
+3758: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
3759:
+3760: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+3761: if a[k] == 1:
__pyx_t_60 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+3762: a[k] = 0
__pyx_t_61 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+3763: xo = X[k]
__pyx_t_62 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_X.diminfo[0].strides));
+3764: yo = Y[k]
__pyx_t_63 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_Y.diminfo[0].strides));
+3765: Io = I[xo, yo]
__pyx_t_64 = __pyx_v_xo;
__pyx_t_65 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_65, __pyx_pybuffernd_I.diminfo[1].strides));
3766:
+3767: dr = adotVal[k] / adotValmax
__pyx_t_66 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+3768: MAJ[k] = MAJ[k] + dr
__pyx_t_67 = __pyx_v_k;
__pyx_t_68 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+3769: MIN = MAJ[k] / R
__pyx_t_69 = __pyx_v_k;
__pyx_v_MIN = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_MAJ.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_R));
+3770: MAJceil = math.ceil(MAJ[k])
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ceil); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_70 = __pyx_v_k; __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_MAJ.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 3770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_7) { __pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3770, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_25); } else { __pyx_t_27 = PyTuple_New(1+1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 3770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_27, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_27, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_71 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_25); if (unlikely((__pyx_t_71 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3770, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_v_MAJceil = __pyx_t_71;
+3771: MINceil = math.ceil(MIN)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ceil); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 3771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (!__pyx_t_8) { __pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3771, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_25); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 3771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_7, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 3771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_71 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_25); if (unlikely((__pyx_t_71 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 3771, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_v_MINceil = __pyx_t_71;
+3772: red = col[k, 0]
__pyx_t_71 = __pyx_v_k;
__pyx_t_72 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_col.diminfo[1].strides));
+3773: green = col[k, 1]
__pyx_t_73 = __pyx_v_k;
__pyx_t_74 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
+3774: blue = col[k, 2]
__pyx_t_75 = __pyx_v_k;
__pyx_t_76 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_col.diminfo[1].strides));
3775:
+3776: imin, imax, jmin, jmax = xo, xo, yo, yo
__pyx_t_77 = __pyx_v_xo;
__pyx_t_78 = __pyx_v_xo;
__pyx_t_79 = __pyx_v_yo;
__pyx_t_80 = __pyx_v_yo;
__pyx_v_imin = __pyx_t_77;
__pyx_v_imax = __pyx_t_78;
__pyx_v_jmin = __pyx_t_79;
__pyx_v_jmax = __pyx_t_80;
3777:
+3778: for deli in range(0, MAJceil + 1):
__pyx_t_80 = (__pyx_v_MAJceil + 1);
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_80; __pyx_t_79+=1) {
__pyx_v_deli = __pyx_t_79;
+3779: for delj in range(0, MINceil + 1):
__pyx_t_78 = (__pyx_v_MINceil + 1);
for (__pyx_t_77 = 0; __pyx_t_77 < __pyx_t_78; __pyx_t_77+=1) {
__pyx_v_delj = __pyx_t_77;
+3780: if (deli / MAJ[k]) ** 2 + (delj / MIN) ** 2 <= 1:
__pyx_t_81 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)__pyx_v_deli) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
+3781: for l1 in range(-1, 2, 2):
for (__pyx_t_82 = -1L; __pyx_t_82 < 2; __pyx_t_82+=2) {
__pyx_v_l1 = __pyx_t_82;
+3782: for l2 in range(-1, 2, 2):
for (__pyx_t_83 = -1L; __pyx_t_83 < 2; __pyx_t_83+=2) {
__pyx_v_l2 = __pyx_t_83;
+3783: i, j = xo + l1 * deli, yo + l2 * delj
__pyx_t_84 = (__pyx_v_xo + (__pyx_v_l1 * __pyx_v_deli));
__pyx_t_85 = (__pyx_v_yo + (__pyx_v_l2 * __pyx_v_delj));
__pyx_v_i = __pyx_t_84;
__pyx_v_j = __pyx_t_85;
+3784: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_86 = (0 <= __pyx_v_i);
if (__pyx_t_86) {
__pyx_t_86 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_87 = (__pyx_t_86 != 0);
if (__pyx_t_87) {
} else {
__pyx_t_23 = __pyx_t_87;
goto __pyx_L34_bool_binop_done;
}
__pyx_t_87 = (0 <= __pyx_v_j);
if (__pyx_t_87) {
__pyx_t_87 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_86 = (__pyx_t_87 != 0);
__pyx_t_23 = __pyx_t_86;
__pyx_L34_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
}
}
+3785: if I[i, j] == 0:
__pyx_t_85 = __pyx_v_i;
__pyx_t_84 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_84, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3786: II[i, j] = Io
__pyx_t_88 = __pyx_v_i;
__pyx_t_89 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_II.diminfo[1].strides) = __pyx_v_Io;
+3787: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+3788: if i > imax:
__pyx_t_23 = ((__pyx_v_i > __pyx_v_imax) != 0);
if (__pyx_t_23) {
/* … */
}
+3789: imax = i
__pyx_v_imax = __pyx_v_i;
+3790: if i < imin:
__pyx_t_23 = ((__pyx_v_i < __pyx_v_imin) != 0);
if (__pyx_t_23) {
/* … */
}
+3791: imin = i
__pyx_v_imin = __pyx_v_i;
+3792: if j > jmax:
__pyx_t_23 = ((__pyx_v_j > __pyx_v_jmax) != 0);
if (__pyx_t_23) {
/* … */
}
+3793: jmax = j
__pyx_v_jmax = __pyx_v_j;
+3794: if j < jmin:
__pyx_t_23 = ((__pyx_v_j < __pyx_v_jmin) != 0);
if (__pyx_t_23) {
/* … */
}
+3795: jmin = j
__pyx_v_jmin = __pyx_v_j;
3796:
+3797: if count > 0:
__pyx_t_23 = ((__pyx_v_count > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3798: i = imin
__pyx_v_i = __pyx_v_imin;
+3799: go = 1
__pyx_v_go = 1;
+3800: found = 0
__pyx_v_found = 0;
+3801: while go is True:
while (1) {
__pyx_t_23 = ((__pyx_v_go == 1) != 0);
if (!__pyx_t_23) break;
+3802: for j in range(jmin, jmax + 1, 1):
__pyx_t_80 = (__pyx_v_jmax + 1);
for (__pyx_t_79 = __pyx_v_jmin; __pyx_t_79 < __pyx_t_80; __pyx_t_79+=1) {
__pyx_v_j = __pyx_t_79;
+3803: if II[i, j] == Io:
__pyx_t_78 = __pyx_v_i;
__pyx_t_77 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_77, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L45_break:;
+3804: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3805: if I[i - 1, j] == Io:
__pyx_t_82 = (__pyx_v_i - 1);
__pyx_t_83 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_83, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3806: io, jo = i, j
__pyx_t_90 = __pyx_v_i;
__pyx_t_91 = __pyx_v_j;
__pyx_v_io = __pyx_t_90;
__pyx_v_jo = __pyx_t_91;
+3807: go = 0
__pyx_v_go = 0;
+3808: found = 1
__pyx_v_found = 1;
+3809: break
goto __pyx_L45_break;
+3810: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3811: if I[i, j - 1] == Io:
__pyx_t_91 = __pyx_v_i;
__pyx_t_90 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3812: io, jo = i, j
__pyx_t_92 = __pyx_v_i;
__pyx_t_93 = __pyx_v_j;
__pyx_v_io = __pyx_t_92;
__pyx_v_jo = __pyx_t_93;
+3813: go = 0
__pyx_v_go = 0;
+3814: found = 1
__pyx_v_found = 1;
+3815: break
goto __pyx_L45_break;
3816:
+3817: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3818: if I[i, j + 1] == Io:
__pyx_t_93 = __pyx_v_i;
__pyx_t_92 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3819: io, jo = i, j
__pyx_t_94 = __pyx_v_i;
__pyx_t_95 = __pyx_v_j;
__pyx_v_io = __pyx_t_94;
__pyx_v_jo = __pyx_t_95;
+3820: go = 0
__pyx_v_go = 0;
+3821: found = 1
__pyx_v_found = 1;
+3822: break
goto __pyx_L45_break;
3823:
3824:
+3825: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3826: if I[i + 1, j] == Io:
__pyx_t_95 = (__pyx_v_i + 1);
__pyx_t_94 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3827: io, jo = i, j
__pyx_t_96 = __pyx_v_i;
__pyx_t_97 = __pyx_v_j;
__pyx_v_io = __pyx_t_96;
__pyx_v_jo = __pyx_t_97;
+3828: go = 0
__pyx_v_go = 0;
+3829: found = 1
__pyx_v_found = 1;
+3830: break
goto __pyx_L45_break;
+3831: i = i + 1
__pyx_v_i = (__pyx_v_i + 1);
+3832: if i == imax + 1:
__pyx_t_23 = ((__pyx_v_i == (__pyx_v_imax + 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
+3833: go = 0
__pyx_v_go = 0;
3834:
+3835: if found == 1:
__pyx_t_23 = ((__pyx_v_found == 1) != 0);
if (__pyx_t_23) {
/* … */
}
3836:
3837: # OUTWARD
+3838: for i in range(io, imax + 1):
__pyx_t_80 = (__pyx_v_imax + 1);
for (__pyx_t_79 = __pyx_v_io; __pyx_t_79 < __pyx_t_80; __pyx_t_79+=1) {
__pyx_v_i = __pyx_t_79;
+3839: for j in range(jo, jmax + 1):
__pyx_t_97 = (__pyx_v_jmax + 1);
for (__pyx_t_96 = __pyx_v_jo; __pyx_t_96 < __pyx_t_97; __pyx_t_96+=1) {
__pyx_v_j = __pyx_t_96;
+3840: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+3841: if II[i, j] == Io:
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L62_break:;
}
+3842: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3843: if I[i - 1, j] == Io:
__pyx_t_101 = (__pyx_v_i - 1);
__pyx_t_102 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3844: I[i, j] = Io
__pyx_t_103 = __pyx_v_i;
__pyx_t_104 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3845: Col[i, j, 2] = red
__pyx_t_105 = __pyx_v_i;
__pyx_t_106 = __pyx_v_j;
__pyx_t_107 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_107, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3846: Col[i, j, 1] = green
__pyx_t_108 = __pyx_v_i;
__pyx_t_109 = __pyx_v_j;
__pyx_t_110 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3847: Col[i, j, 0] = blue
__pyx_t_111 = __pyx_v_i;
__pyx_t_112 = __pyx_v_j;
__pyx_t_113 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3848: a[k] = 1
__pyx_t_114 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3849: break
goto __pyx_L62_break;
+3850: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3851: if I[i, j - 1] == Io:
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3852: I[i, j] = Io
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3853: Col[i, j, 2] = red
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
__pyx_t_121 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3854: Col[i, j, 1] = green
__pyx_t_122 = __pyx_v_i;
__pyx_t_123 = __pyx_v_j;
__pyx_t_124 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3855: Col[i, j, 0] = blue
__pyx_t_125 = __pyx_v_i;
__pyx_t_126 = __pyx_v_j;
__pyx_t_127 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3856: a[k] = 1
__pyx_t_128 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_128, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3857: break
goto __pyx_L62_break;
3858:
+3859: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3860: if I[i, j + 1] == Io:
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3861: I[i, j] = Io
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3862: Col[i, j, 2] = red
__pyx_t_133 = __pyx_v_i;
__pyx_t_134 = __pyx_v_j;
__pyx_t_135 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3863: Col[i, j, 1] = green
__pyx_t_136 = __pyx_v_i;
__pyx_t_137 = __pyx_v_j;
__pyx_t_138 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3864: Col[i, j, 0] = blue
__pyx_t_139 = __pyx_v_i;
__pyx_t_140 = __pyx_v_j;
__pyx_t_141 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3865: a[k] = 1
__pyx_t_142 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3866: break
goto __pyx_L62_break;
3867:
3868:
+3869: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3870: if I[i + 1, j] == Io:
__pyx_t_143 = (__pyx_v_i + 1);
__pyx_t_144 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3871: I[i, j] = Io
__pyx_t_145 = __pyx_v_i;
__pyx_t_146 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3872: Col[i, j, 2] = red
__pyx_t_147 = __pyx_v_i;
__pyx_t_148 = __pyx_v_j;
__pyx_t_149 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_149, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3873: Col[i, j, 1] = green
__pyx_t_150 = __pyx_v_i;
__pyx_t_151 = __pyx_v_j;
__pyx_t_152 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3874: Col[i, j, 0] = blue
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = __pyx_v_j;
__pyx_t_155 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_155, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3875: a[k] = 1
__pyx_t_156 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3876: break
goto __pyx_L62_break;
3877:
+3878: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_97 = (__pyx_v_jmin - 1);
for (__pyx_t_96 = (__pyx_v_jo - 1); __pyx_t_96 > __pyx_t_97; __pyx_t_96-=1) {
__pyx_v_j = __pyx_t_96;
+3879: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+3880: if II[i, j] == Io:
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L75_break:;
}
}
+3881: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3882: if I[i - 1, j] == Io:
__pyx_t_159 = (__pyx_v_i - 1);
__pyx_t_160 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3883: I[i, j] = Io
__pyx_t_161 = __pyx_v_i;
__pyx_t_162 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3884: Col[i, j, 2] = red
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
__pyx_t_165 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3885: Col[i, j, 1] = green
__pyx_t_166 = __pyx_v_i;
__pyx_t_167 = __pyx_v_j;
__pyx_t_168 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3886: Col[i, j, 0] = blue
__pyx_t_169 = __pyx_v_i;
__pyx_t_170 = __pyx_v_j;
__pyx_t_171 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3887: a[k] = 1
__pyx_t_172 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_172, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3888: break
goto __pyx_L75_break;
+3889: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3890: if I[i, j - 1] == Io:
__pyx_t_173 = __pyx_v_i;
__pyx_t_174 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3891: I[i, j] = Io
__pyx_t_175 = __pyx_v_i;
__pyx_t_176 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3892: Col[i, j, 2] = red
__pyx_t_177 = __pyx_v_i;
__pyx_t_178 = __pyx_v_j;
__pyx_t_179 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_179, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3893: Col[i, j, 1] = green
__pyx_t_180 = __pyx_v_i;
__pyx_t_181 = __pyx_v_j;
__pyx_t_182 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_180, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3894: Col[i, j, 0] = blue
__pyx_t_183 = __pyx_v_i;
__pyx_t_184 = __pyx_v_j;
__pyx_t_185 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3895: a[k] = 1
__pyx_t_186 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_186, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3896: break
goto __pyx_L75_break;
3897:
+3898: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3899: if I[i, j + 1] == Io:
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3900: I[i, j] = Io
__pyx_t_189 = __pyx_v_i;
__pyx_t_190 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_189, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_190, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3901: Col[i, j, 2] = red
__pyx_t_191 = __pyx_v_i;
__pyx_t_192 = __pyx_v_j;
__pyx_t_193 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_193, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3902: Col[i, j, 1] = green
__pyx_t_194 = __pyx_v_i;
__pyx_t_195 = __pyx_v_j;
__pyx_t_196 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_194, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3903: Col[i, j, 0] = blue
__pyx_t_197 = __pyx_v_i;
__pyx_t_198 = __pyx_v_j;
__pyx_t_199 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3904: a[k] = 1
__pyx_t_200 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_200, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3905: break
goto __pyx_L75_break;
3906:
3907:
+3908: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3909: if I[i + 1, j] == Io:
__pyx_t_201 = (__pyx_v_i + 1);
__pyx_t_202 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3910: I[i, j] = Io
__pyx_t_203 = __pyx_v_i;
__pyx_t_204 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_204, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3911: Col[i, j, 2] = red
__pyx_t_205 = __pyx_v_i;
__pyx_t_206 = __pyx_v_j;
__pyx_t_207 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_207, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3912: Col[i, j, 1] = green
__pyx_t_208 = __pyx_v_i;
__pyx_t_209 = __pyx_v_j;
__pyx_t_210 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_209, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_210, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3913: Col[i, j, 0] = blue
__pyx_t_211 = __pyx_v_i;
__pyx_t_212 = __pyx_v_j;
__pyx_t_213 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_211, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_212, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_213, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3914: a[k] = 1
__pyx_t_214 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_214, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3915: break
goto __pyx_L75_break;
3916:
3917:
3918:
+3919: for i in range(io - 1, imin - 1, -1):
__pyx_t_80 = (__pyx_v_imin - 1);
for (__pyx_t_79 = (__pyx_v_io - 1); __pyx_t_79 > __pyx_t_80; __pyx_t_79-=1) {
__pyx_v_i = __pyx_t_79;
+3920: for j in range(jo, jmax + 1):
__pyx_t_97 = (__pyx_v_jmax + 1);
for (__pyx_t_96 = __pyx_v_jo; __pyx_t_96 < __pyx_t_97; __pyx_t_96+=1) {
__pyx_v_j = __pyx_t_96;
+3921: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+3922: if II[i, j] == Io:
__pyx_t_215 = __pyx_v_i;
__pyx_t_216 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_216, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L90_break:;
}
+3923: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3924: if I[i - 1, j] == Io:
__pyx_t_217 = (__pyx_v_i - 1);
__pyx_t_218 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_218, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3925: I[i, j] = Io
__pyx_t_219 = __pyx_v_i;
__pyx_t_220 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_219, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_220, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3926: Col[i, j, 2] = red
__pyx_t_221 = __pyx_v_i;
__pyx_t_222 = __pyx_v_j;
__pyx_t_223 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_222, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_223, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3927: Col[i, j, 1] = green
__pyx_t_224 = __pyx_v_i;
__pyx_t_225 = __pyx_v_j;
__pyx_t_226 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_224, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3928: Col[i, j, 0] = blue
__pyx_t_227 = __pyx_v_i;
__pyx_t_228 = __pyx_v_j;
__pyx_t_229 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_228, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_229, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3929: a[k] = 1
__pyx_t_230 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_230, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3930: break
goto __pyx_L90_break;
+3931: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3932: if I[i, j - 1] == Io:
__pyx_t_231 = __pyx_v_i;
__pyx_t_232 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_231, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_232, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3933: I[i, j] = Io
__pyx_t_233 = __pyx_v_i;
__pyx_t_234 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_233, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_234, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3934: Col[i, j, 2] = red
__pyx_t_235 = __pyx_v_i;
__pyx_t_236 = __pyx_v_j;
__pyx_t_237 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_236, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3935: Col[i, j, 1] = green
__pyx_t_238 = __pyx_v_i;
__pyx_t_239 = __pyx_v_j;
__pyx_t_240 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_238, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3936: Col[i, j, 0] = blue
__pyx_t_241 = __pyx_v_i;
__pyx_t_242 = __pyx_v_j;
__pyx_t_243 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3937: a[k] = 1
__pyx_t_244 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_244, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3938: break
goto __pyx_L90_break;
3939:
+3940: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3941: if I[i, j + 1] == Io:
__pyx_t_245 = __pyx_v_i;
__pyx_t_246 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_246, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3942: I[i, j] = Io
__pyx_t_247 = __pyx_v_i;
__pyx_t_248 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_248, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3943: Col[i, j, 2] = red
__pyx_t_249 = __pyx_v_i;
__pyx_t_250 = __pyx_v_j;
__pyx_t_251 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_250, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_251, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3944: Col[i, j, 1] = green
__pyx_t_252 = __pyx_v_i;
__pyx_t_253 = __pyx_v_j;
__pyx_t_254 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_252, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_253, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3945: Col[i, j, 0] = blue
__pyx_t_255 = __pyx_v_i;
__pyx_t_256 = __pyx_v_j;
__pyx_t_257 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3946: a[k] = 1
__pyx_t_258 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_258, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3947: break
goto __pyx_L90_break;
3948:
3949:
+3950: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3951: if I[i + 1, j] == Io:
__pyx_t_259 = (__pyx_v_i + 1);
__pyx_t_260 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3952: I[i, j] = Io
__pyx_t_261 = __pyx_v_i;
__pyx_t_262 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_261, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_262, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3953: Col[i, j, 2] = red
__pyx_t_263 = __pyx_v_i;
__pyx_t_264 = __pyx_v_j;
__pyx_t_265 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_265, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3954: Col[i, j, 1] = green
__pyx_t_266 = __pyx_v_i;
__pyx_t_267 = __pyx_v_j;
__pyx_t_268 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3955: Col[i, j, 0] = blue
__pyx_t_269 = __pyx_v_i;
__pyx_t_270 = __pyx_v_j;
__pyx_t_271 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3956: a[k] = 1
__pyx_t_272 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_272, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3957: break
goto __pyx_L90_break;
3958:
+3959: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_97 = (__pyx_v_jmin - 1);
for (__pyx_t_96 = (__pyx_v_jo - 1); __pyx_t_96 > __pyx_t_97; __pyx_t_96-=1) {
__pyx_v_j = __pyx_t_96;
+3960: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+3961: if II[i, j] == Io:
__pyx_t_273 = __pyx_v_i;
__pyx_t_274 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_273, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_274, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L103_break:;
}
}
+3962: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3963: if I[i - 1, j] == Io:
__pyx_t_275 = (__pyx_v_i - 1);
__pyx_t_276 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_275, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_276, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3964: I[i, j] = Io
__pyx_t_277 = __pyx_v_i;
__pyx_t_278 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_278, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3965: Col[i, j, 2] = red
__pyx_t_279 = __pyx_v_i;
__pyx_t_280 = __pyx_v_j;
__pyx_t_281 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_280, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_281, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3966: Col[i, j, 1] = green
__pyx_t_282 = __pyx_v_i;
__pyx_t_283 = __pyx_v_j;
__pyx_t_284 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_283, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3967: Col[i, j, 0] = blue
__pyx_t_285 = __pyx_v_i;
__pyx_t_286 = __pyx_v_j;
__pyx_t_287 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_285, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_286, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_287, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3968: a[k] = 1
__pyx_t_288 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_288, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3969: break
goto __pyx_L103_break;
+3970: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+3971: if I[i, j - 1] == Io:
__pyx_t_289 = __pyx_v_i;
__pyx_t_290 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_289, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_290, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3972: I[i, j] = Io
__pyx_t_291 = __pyx_v_i;
__pyx_t_292 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_291, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_292, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3973: Col[i, j, 2] = red
__pyx_t_293 = __pyx_v_i;
__pyx_t_294 = __pyx_v_j;
__pyx_t_295 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3974: Col[i, j, 1] = green
__pyx_t_296 = __pyx_v_i;
__pyx_t_297 = __pyx_v_j;
__pyx_t_298 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3975: Col[i, j, 0] = blue
__pyx_t_299 = __pyx_v_i;
__pyx_t_300 = __pyx_v_j;
__pyx_t_301 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_301, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3976: a[k] = 1
__pyx_t_302 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3977: break
goto __pyx_L103_break;
3978:
+3979: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3980: if I[i, j + 1] == Io:
__pyx_t_303 = __pyx_v_i;
__pyx_t_304 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_303, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_304, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3981: I[i, j] = Io
__pyx_t_305 = __pyx_v_i;
__pyx_t_306 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_305, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_306, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3982: Col[i, j, 2] = red
__pyx_t_307 = __pyx_v_i;
__pyx_t_308 = __pyx_v_j;
__pyx_t_309 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3983: Col[i, j, 1] = green
__pyx_t_310 = __pyx_v_i;
__pyx_t_311 = __pyx_v_j;
__pyx_t_312 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_311, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3984: Col[i, j, 0] = blue
__pyx_t_313 = __pyx_v_i;
__pyx_t_314 = __pyx_v_j;
__pyx_t_315 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_315, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3985: a[k] = 1
__pyx_t_316 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3986: break
goto __pyx_L103_break;
3987:
3988:
+3989: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+3990: if I[i + 1, j] == Io:
__pyx_t_317 = (__pyx_v_i + 1);
__pyx_t_318 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_317, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_318, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+3991: I[i, j] = Io
__pyx_t_319 = __pyx_v_i;
__pyx_t_320 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_319, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_320, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+3992: Col[i, j, 2] = red
__pyx_t_321 = __pyx_v_i;
__pyx_t_322 = __pyx_v_j;
__pyx_t_323 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+3993: Col[i, j, 1] = green
__pyx_t_324 = __pyx_v_i;
__pyx_t_325 = __pyx_v_j;
__pyx_t_326 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+3994: Col[i, j, 0] = blue
__pyx_t_327 = __pyx_v_i;
__pyx_t_328 = __pyx_v_j;
__pyx_t_329 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_329, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+3995: a[k] = 1
__pyx_t_330 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_330, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+3996: break
goto __pyx_L103_break;
3997:
3998:
3999:
4000: # INWARD
+4001: for i in range(imax, io - 1, -1):
__pyx_t_80 = (__pyx_v_io - 1);
for (__pyx_t_79 = __pyx_v_imax; __pyx_t_79 > __pyx_t_80; __pyx_t_79-=1) {
__pyx_v_i = __pyx_t_79;
+4002: for j in range(jo, jmax + 1):
__pyx_t_97 = (__pyx_v_jmax + 1);
for (__pyx_t_96 = __pyx_v_jo; __pyx_t_96 < __pyx_t_97; __pyx_t_96+=1) {
__pyx_v_j = __pyx_t_96;
+4003: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+4004: if II[i, j] == Io:
__pyx_t_331 = __pyx_v_i;
__pyx_t_332 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_331, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_332, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L118_break:;
}
+4005: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4006: if I[i - 1, j] == Io:
__pyx_t_333 = (__pyx_v_i - 1);
__pyx_t_334 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_333, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_334, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4007: I[i, j] = Io
__pyx_t_335 = __pyx_v_i;
__pyx_t_336 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_335, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_336, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4008: Col[i, j, 2] = red
__pyx_t_337 = __pyx_v_i;
__pyx_t_338 = __pyx_v_j;
__pyx_t_339 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4009: Col[i, j, 1] = green
__pyx_t_340 = __pyx_v_i;
__pyx_t_341 = __pyx_v_j;
__pyx_t_342 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_341, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_342, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4010: Col[i, j, 0] = blue
__pyx_t_343 = __pyx_v_i;
__pyx_t_344 = __pyx_v_j;
__pyx_t_345 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_343, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_344, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_345, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4011: a[k] = 1
__pyx_t_346 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4012: break
goto __pyx_L118_break;
+4013: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4014: if I[i, j - 1] == Io:
__pyx_t_347 = __pyx_v_i;
__pyx_t_348 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_347, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_348, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4015: I[i, j] = Io
__pyx_t_349 = __pyx_v_i;
__pyx_t_350 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_349, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_350, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4016: Col[i, j, 2] = red
__pyx_t_351 = __pyx_v_i;
__pyx_t_352 = __pyx_v_j;
__pyx_t_353 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4017: Col[i, j, 1] = green
__pyx_t_354 = __pyx_v_i;
__pyx_t_355 = __pyx_v_j;
__pyx_t_356 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_355, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_356, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4018: Col[i, j, 0] = blue
__pyx_t_357 = __pyx_v_i;
__pyx_t_358 = __pyx_v_j;
__pyx_t_359 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_357, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_358, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_359, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4019: a[k] = 1
__pyx_t_360 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_360, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4020: break
goto __pyx_L118_break;
4021:
+4022: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4023: if I[i, j + 1] == Io:
__pyx_t_361 = __pyx_v_i;
__pyx_t_362 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_361, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_362, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4024: I[i, j] = Io
__pyx_t_363 = __pyx_v_i;
__pyx_t_364 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_363, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_364, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4025: Col[i, j, 2] = red
__pyx_t_365 = __pyx_v_i;
__pyx_t_366 = __pyx_v_j;
__pyx_t_367 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4026: Col[i, j, 1] = green
__pyx_t_368 = __pyx_v_i;
__pyx_t_369 = __pyx_v_j;
__pyx_t_370 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_369, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_370, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4027: Col[i, j, 0] = blue
__pyx_t_371 = __pyx_v_i;
__pyx_t_372 = __pyx_v_j;
__pyx_t_373 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_371, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_372, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_373, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4028: a[k] = 1
__pyx_t_374 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4029: break
goto __pyx_L118_break;
4030:
4031:
+4032: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4033: if I[i + 1, j] == Io:
__pyx_t_375 = (__pyx_v_i + 1);
__pyx_t_376 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_375, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_376, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4034: I[i, j] = Io
__pyx_t_377 = __pyx_v_i;
__pyx_t_378 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_377, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_378, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4035: Col[i, j, 2] = red
__pyx_t_379 = __pyx_v_i;
__pyx_t_380 = __pyx_v_j;
__pyx_t_381 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4036: Col[i, j, 1] = green
__pyx_t_382 = __pyx_v_i;
__pyx_t_383 = __pyx_v_j;
__pyx_t_384 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_383, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4037: Col[i, j, 0] = blue
__pyx_t_385 = __pyx_v_i;
__pyx_t_386 = __pyx_v_j;
__pyx_t_387 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_385, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_386, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_387, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4038: a[k] = 1
__pyx_t_388 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4039: break
goto __pyx_L118_break;
4040:
+4041: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_97 = (__pyx_v_jmin - 1);
for (__pyx_t_96 = (__pyx_v_jo - 1); __pyx_t_96 > __pyx_t_97; __pyx_t_96-=1) {
__pyx_v_j = __pyx_t_96;
+4042: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+4043: if II[i, j] == Io:
__pyx_t_389 = __pyx_v_i;
__pyx_t_390 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_389, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_390, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L131_break:;
}
}
+4044: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4045: if I[i - 1, j] == Io:
__pyx_t_391 = (__pyx_v_i - 1);
__pyx_t_392 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_391, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_392, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4046: I[i, j] = Io
__pyx_t_393 = __pyx_v_i;
__pyx_t_394 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_393, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_394, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4047: Col[i, j, 2] = red
__pyx_t_395 = __pyx_v_i;
__pyx_t_396 = __pyx_v_j;
__pyx_t_397 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_397, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4048: Col[i, j, 1] = green
__pyx_t_398 = __pyx_v_i;
__pyx_t_399 = __pyx_v_j;
__pyx_t_400 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_398, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_399, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_400, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4049: Col[i, j, 0] = blue
__pyx_t_401 = __pyx_v_i;
__pyx_t_402 = __pyx_v_j;
__pyx_t_403 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_401, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_402, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_403, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4050: a[k] = 1
__pyx_t_404 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_404, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4051: break
goto __pyx_L131_break;
+4052: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4053: if I[i, j - 1] == Io:
__pyx_t_405 = __pyx_v_i;
__pyx_t_406 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_405, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_406, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4054: I[i, j] = Io
__pyx_t_407 = __pyx_v_i;
__pyx_t_408 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_407, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_408, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4055: Col[i, j, 2] = red
__pyx_t_409 = __pyx_v_i;
__pyx_t_410 = __pyx_v_j;
__pyx_t_411 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_409, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_410, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_411, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4056: Col[i, j, 1] = green
__pyx_t_412 = __pyx_v_i;
__pyx_t_413 = __pyx_v_j;
__pyx_t_414 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_412, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_413, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_414, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4057: Col[i, j, 0] = blue
__pyx_t_415 = __pyx_v_i;
__pyx_t_416 = __pyx_v_j;
__pyx_t_417 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_415, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_416, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_417, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4058: a[k] = 1
__pyx_t_418 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_418, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4059: break
goto __pyx_L131_break;
4060:
+4061: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4062: if I[i, j + 1] == Io:
__pyx_t_419 = __pyx_v_i;
__pyx_t_420 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_419, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_420, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4063: I[i, j] = Io
__pyx_t_421 = __pyx_v_i;
__pyx_t_422 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_421, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_422, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4064: Col[i, j, 2] = red
__pyx_t_423 = __pyx_v_i;
__pyx_t_424 = __pyx_v_j;
__pyx_t_425 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_425, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4065: Col[i, j, 1] = green
__pyx_t_426 = __pyx_v_i;
__pyx_t_427 = __pyx_v_j;
__pyx_t_428 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_426, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_427, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_428, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4066: Col[i, j, 0] = blue
__pyx_t_429 = __pyx_v_i;
__pyx_t_430 = __pyx_v_j;
__pyx_t_431 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_429, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_430, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_431, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4067: a[k] = 1
__pyx_t_432 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_432, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4068: break
goto __pyx_L131_break;
4069:
4070:
+4071: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4072: if I[i + 1, j] == Io:
__pyx_t_433 = (__pyx_v_i + 1);
__pyx_t_434 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_433, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_434, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4073: I[i, j] = Io
__pyx_t_435 = __pyx_v_i;
__pyx_t_436 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_435, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_436, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4074: Col[i, j, 2] = red
__pyx_t_437 = __pyx_v_i;
__pyx_t_438 = __pyx_v_j;
__pyx_t_439 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_439, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4075: Col[i, j, 1] = green
__pyx_t_440 = __pyx_v_i;
__pyx_t_441 = __pyx_v_j;
__pyx_t_442 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_440, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4076: Col[i, j, 0] = blue
__pyx_t_443 = __pyx_v_i;
__pyx_t_444 = __pyx_v_j;
__pyx_t_445 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_443, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_444, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_445, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4077: a[k] = 1
__pyx_t_446 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_446, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4078: break
goto __pyx_L131_break;
4079:
4080:
4081:
+4082: for i in range(imin, io, -1):
__pyx_t_80 = __pyx_v_io;
for (__pyx_t_79 = __pyx_v_imin; __pyx_t_79 > __pyx_t_80; __pyx_t_79-=1) {
__pyx_v_i = __pyx_t_79;
+4083: for j in range(jo, jmax + 1):
__pyx_t_97 = (__pyx_v_jmax + 1);
for (__pyx_t_96 = __pyx_v_jo; __pyx_t_96 < __pyx_t_97; __pyx_t_96+=1) {
__pyx_v_j = __pyx_t_96;
+4084: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+4085: if II[i, j] == Io:
__pyx_t_447 = __pyx_v_i;
__pyx_t_448 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_447, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_448, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L146_break:;
}
+4086: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4087: if I[i - 1, j] == Io:
__pyx_t_449 = (__pyx_v_i - 1);
__pyx_t_450 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_449, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_450, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4088: I[i, j] = Io
__pyx_t_451 = __pyx_v_i;
__pyx_t_452 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_451, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_452, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4089: Col[i, j, 2] = red
__pyx_t_453 = __pyx_v_i;
__pyx_t_454 = __pyx_v_j;
__pyx_t_455 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_453, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_454, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4090: Col[i, j, 1] = green
__pyx_t_456 = __pyx_v_i;
__pyx_t_457 = __pyx_v_j;
__pyx_t_458 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_457, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_458, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4091: Col[i, j, 0] = blue
__pyx_t_459 = __pyx_v_i;
__pyx_t_460 = __pyx_v_j;
__pyx_t_461 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_459, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_460, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_461, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4092: a[k] = 1
__pyx_t_462 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_462, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4093: break
goto __pyx_L146_break;
+4094: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4095: if I[i, j - 1] == Io:
__pyx_t_463 = __pyx_v_i;
__pyx_t_464 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_463, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_464, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4096: I[i, j] = Io
__pyx_t_465 = __pyx_v_i;
__pyx_t_466 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_465, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_466, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4097: Col[i, j, 2] = red
__pyx_t_467 = __pyx_v_i;
__pyx_t_468 = __pyx_v_j;
__pyx_t_469 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_467, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_468, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_469, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4098: Col[i, j, 1] = green
__pyx_t_470 = __pyx_v_i;
__pyx_t_471 = __pyx_v_j;
__pyx_t_472 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_470, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_471, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_472, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4099: Col[i, j, 0] = blue
__pyx_t_473 = __pyx_v_i;
__pyx_t_474 = __pyx_v_j;
__pyx_t_475 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_473, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_474, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_475, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4100: a[k] = 1
__pyx_t_476 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_476, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4101: break
goto __pyx_L146_break;
4102:
+4103: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4104: if I[i, j + 1] == Io:
__pyx_t_477 = __pyx_v_i;
__pyx_t_478 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_477, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_478, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4105: I[i, j] = Io
__pyx_t_479 = __pyx_v_i;
__pyx_t_480 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_479, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_480, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4106: Col[i, j, 2] = red
__pyx_t_481 = __pyx_v_i;
__pyx_t_482 = __pyx_v_j;
__pyx_t_483 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_481, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_482, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_483, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4107: Col[i, j, 1] = green
__pyx_t_484 = __pyx_v_i;
__pyx_t_485 = __pyx_v_j;
__pyx_t_486 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_484, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_485, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_486, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4108: Col[i, j, 0] = blue
__pyx_t_487 = __pyx_v_i;
__pyx_t_488 = __pyx_v_j;
__pyx_t_489 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_487, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_488, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_489, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4109: a[k] = 1
__pyx_t_490 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_490, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4110: break
goto __pyx_L146_break;
4111:
4112:
+4113: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4114: if I[i + 1, j] == Io:
__pyx_t_491 = (__pyx_v_i + 1);
__pyx_t_492 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_491, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_492, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4115: I[i, j] = Io
__pyx_t_493 = __pyx_v_i;
__pyx_t_494 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_493, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_494, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4116: a[k] = 1
__pyx_t_495 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_495, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4117: break
goto __pyx_L146_break;
4118:
+4119: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_97 = (__pyx_v_jmin - 1);
for (__pyx_t_96 = (__pyx_v_jo - 1); __pyx_t_96 > __pyx_t_97; __pyx_t_96-=1) {
__pyx_v_j = __pyx_t_96;
+4120: for dum in range(1):
for (__pyx_t_98 = 0; __pyx_t_98 < 1; __pyx_t_98+=1) {
__pyx_v_dum = __pyx_t_98;
+4121: if II[i, j] == Io:
__pyx_t_496 = __pyx_v_i;
__pyx_t_497 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_496, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_497, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L159_break:;
}
}
+4122: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4123: if I[i - 1, j] == Io:
__pyx_t_498 = (__pyx_v_i - 1);
__pyx_t_499 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_498, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_499, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4124: I[i, j] = Io
__pyx_t_500 = __pyx_v_i;
__pyx_t_501 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_500, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_501, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4125: Col[i, j, 2] = red
__pyx_t_502 = __pyx_v_i;
__pyx_t_503 = __pyx_v_j;
__pyx_t_504 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_502, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_503, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_504, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4126: Col[i, j, 1] = green
__pyx_t_505 = __pyx_v_i;
__pyx_t_506 = __pyx_v_j;
__pyx_t_507 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_505, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_506, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_507, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4127: Col[i, j, 0] = blue
__pyx_t_508 = __pyx_v_i;
__pyx_t_509 = __pyx_v_j;
__pyx_t_510 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_508, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_509, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_510, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4128: a[k] = 1
__pyx_t_511 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_511, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4129: break
goto __pyx_L159_break;
+4130: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4131: if I[i, j - 1] == Io:
__pyx_t_512 = __pyx_v_i;
__pyx_t_513 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_512, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_513, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4132: I[i, j] = Io
__pyx_t_514 = __pyx_v_i;
__pyx_t_515 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_514, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_515, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4133: Col[i, j, 2] = red
__pyx_t_516 = __pyx_v_i;
__pyx_t_517 = __pyx_v_j;
__pyx_t_518 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_516, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_517, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_518, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4134: Col[i, j, 1] = green
__pyx_t_519 = __pyx_v_i;
__pyx_t_520 = __pyx_v_j;
__pyx_t_521 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_519, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_520, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_521, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4135: Col[i, j, 0] = blue
__pyx_t_522 = __pyx_v_i;
__pyx_t_523 = __pyx_v_j;
__pyx_t_524 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_522, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_523, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_524, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4136: a[k] = 1
__pyx_t_525 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_525, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4137: break
goto __pyx_L159_break;
4138:
+4139: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4140: if I[i, j + 1] == Io:
__pyx_t_526 = __pyx_v_i;
__pyx_t_527 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_526, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_527, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4141: I[i, j] = Io
__pyx_t_528 = __pyx_v_i;
__pyx_t_529 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_528, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_529, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4142: Col[i, j, 2] = red
__pyx_t_530 = __pyx_v_i;
__pyx_t_531 = __pyx_v_j;
__pyx_t_532 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_530, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_531, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_532, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4143: Col[i, j, 1] = green
__pyx_t_533 = __pyx_v_i;
__pyx_t_534 = __pyx_v_j;
__pyx_t_535 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_533, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_534, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_535, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4144: Col[i, j, 0] = blue
__pyx_t_536 = __pyx_v_i;
__pyx_t_537 = __pyx_v_j;
__pyx_t_538 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_536, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_537, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_538, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4145: a[k] = 1
__pyx_t_539 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_539, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4146: break
goto __pyx_L159_break;
4147:
4148:
+4149: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4150: if I[i + 1, j] == Io:
__pyx_t_540 = (__pyx_v_i + 1);
__pyx_t_541 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_540, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_541, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4151: I[i, j] = Io
__pyx_t_542 = __pyx_v_i;
__pyx_t_543 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_542, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_543, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4152: Col[i, j, 2] = red
__pyx_t_544 = __pyx_v_i;
__pyx_t_545 = __pyx_v_j;
__pyx_t_546 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_544, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_545, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_546, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4153: Col[i, j, 1] = green
__pyx_t_547 = __pyx_v_i;
__pyx_t_548 = __pyx_v_j;
__pyx_t_549 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_547, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_548, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_549, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4154: Col[i, j, 0] = blue
__pyx_t_550 = __pyx_v_i;
__pyx_t_551 = __pyx_v_j;
__pyx_t_552 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_550, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_551, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_552, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4155: a[k] = 1
__pyx_t_553 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_553, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4156: break
goto __pyx_L159_break;
4157:
+4158: if a[k] == 0:
__pyx_t_80 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4159: xmin = max(0, xo - MAJceil)
__pyx_t_79 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_554 = 0;
if (((__pyx_t_79 > __pyx_t_554) != 0)) {
__pyx_t_97 = __pyx_t_79;
} else {
__pyx_t_97 = __pyx_t_554;
}
__pyx_v_xmin = __pyx_t_97;
+4160: xmax = min(m - 1, xo + MAJceil)
__pyx_t_97 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_79 = (__pyx_v_m - 1);
if (((__pyx_t_97 < __pyx_t_79) != 0)) {
__pyx_t_96 = __pyx_t_97;
} else {
__pyx_t_96 = __pyx_t_79;
}
__pyx_v_xmax = __pyx_t_96;
+4161: ymin = max(0, yo - MINceil)
__pyx_t_96 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_554 = 0;
if (((__pyx_t_96 > __pyx_t_554) != 0)) {
__pyx_t_97 = __pyx_t_96;
} else {
__pyx_t_97 = __pyx_t_554;
}
__pyx_v_ymin = __pyx_t_97;
+4162: ymax = min(n - 1, yo + MINceil)
__pyx_t_97 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_96 = (__pyx_v_n - 1);
if (((__pyx_t_97 < __pyx_t_96) != 0)) {
__pyx_t_79 = __pyx_t_97;
} else {
__pyx_t_79 = __pyx_t_96;
}
__pyx_v_ymax = __pyx_t_79;
+4163: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_79 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
4164:
+4165: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+4166: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
}
+4167: if asy == 0:
__pyx_t_23 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4168: break
goto __pyx_L12_break;
4169: else:
+4170: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_27 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_27); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4170, __pyx_L1_error)
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_27, __pyx_n_s_all); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4170, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__pyx_t_27 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
}
}
if (__pyx_t_27) {
__pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4170, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
} else {
__pyx_t_25 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4170, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_25);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = __Pyx_PyInt_EqObjC(__pyx_t_25, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4170, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 4170, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_23) {
/* … */
}
+4171: break
goto __pyx_L12_break;
4172: else:
+4173: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4173, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+4174: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_27); __pyx_t_7 = 0; __pyx_t_27 = 0; __pyx_t_27 = PyTuple_New(1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_27, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4174, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4174, __pyx_L1_error) } __pyx_t_9 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+4175: II = np.zeros((m, n), dtype=np.int)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_25 = PyTuple_New(2); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_25, 1, __pyx_t_27); __pyx_t_8 = 0; __pyx_t_27 = 0; __pyx_t_27 = PyTuple_New(1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyDict_New(); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_25, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_27, __pyx_t_25); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4175, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_v_II, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4175, __pyx_L1_error) } __pyx_t_15 = 0; __Pyx_DECREF_SET(__pyx_v_II, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+4176: MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_27 = PyTuple_New(1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_27, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4176, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_v_MAJ, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4176, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_MAJ, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+4177: a = np.ones(p, dtype=np.int8)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ones); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_27 = PyTuple_New(1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_27, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4177, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4177, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+4178: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_centroids); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_5 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); __pyx_t_26 = 1; } } __pyx_t_6 = PyTuple_New(4+__pyx_t_26); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_26, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_26, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_26, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_26, __pyx_t_25); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_25 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 4178, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_27 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_27 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_27 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_25 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_25)->tp_iternext; index = 0; __pyx_t_27 = __pyx_t_24(__pyx_t_25); if (unlikely(!__pyx_t_27)) goto __pyx_L172_unpacking_failed; __Pyx_GOTREF(__pyx_t_27); index = 1; __pyx_t_6 = __pyx_t_24(__pyx_t_25); if (unlikely(!__pyx_t_6)) goto __pyx_L172_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_25), 2) < 0) __PYX_ERR(0, 4178, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; goto __pyx_L173_unpacking_done; __pyx_L172_unpacking_failed:; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 4178, __pyx_L1_error) __pyx_L173_unpacking_done:; } if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4178, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4178, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4178, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4178, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+4179: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
+4180: toc = time.time()
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (__pyx_t_6) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4180, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4180, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 4180, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_toc = __pyx_t_22;
+4181: obj.exetime = toc - tic
__pyx_t_1 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_1) < 0) __PYX_ERR(0, 4181, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4182: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 4182, __pyx_L1_error)
+4183: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 4183, __pyx_L1_error)
+4184: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 4184, __pyx_L1_error)
+4185: obj.adotVal = adotVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_adotVal, ((PyObject *)__pyx_v_adotVal)) < 0) __PYX_ERR(0, 4185, __pyx_L1_error)
+4186: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 4186, __pyx_L1_error)
+4187: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
4188:
4189:
+4190: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_37Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_37Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_37Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_37Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_36Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_36Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_seq;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_MIN;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_MAJ;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
CYTHON_UNUSED PyArrayObject *__pyx_v_II = 0;
PyArrayObject *__pyx_v_a = 0;
CYTHON_UNUSED PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_Rval = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_II;
__Pyx_Buffer __pyx_pybuffer_II;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rval;
__Pyx_Buffer __pyx_pybuffer_Rval;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_II.pybuffer.buf = NULL;
__pyx_pybuffer_II.refcount = 0;
__pyx_pybuffernd_II.data = NULL;
__pyx_pybuffernd_II.rcbuffer = &__pyx_pybuffer_II;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_Rval.pybuffer.buf = NULL;
__pyx_pybuffer_Rval.refcount = 0;
__pyx_pybuffernd_Rval.data = NULL;
__pyx_pybuffernd_Rval.rcbuffer = &__pyx_pybuffer_Rval;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_27);
__Pyx_XDECREF(__pyx_t_61);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_II);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_Rval);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__47 = PyTuple_Pack(60, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Thetafunc, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_MN, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_countim, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_Iter, __pyx_n_s_MIN, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_R, __pyx_n_s_MAJ, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_II, __pyx_n_s_a, __pyx_n_s_adotVal, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_Rval, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__47)) __PYX_ERR(0, 4190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__47);
__Pyx_GIVEREF(__pyx_tuple__47);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_37Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4190, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_9, __pyx_t_2) < 0) __PYX_ERR(0, 4190, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__48 = (PyObject*)__Pyx_PyCode_New(1, 0, 60, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__47, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_9, 4190, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__48)) __PYX_ERR(0, 4190, __pyx_L1_error)
4191: # Grabbing data from the input object
+4192: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4192, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+4193: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4193, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+4194: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4194, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4194, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+4195: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4195, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+4196: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4196, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+4197: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4197, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+4198: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4198, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+4199: cdef long long seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4199, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4199, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_2;
+4200: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4200, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+4201: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4201, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+4202: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+4203: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+4204: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
+4205: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
4206:
4207:
4208: # Declaring other variables
4209: cdef double tic, toc
4210: cdef long long deli, delj, MN, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, dum, countim, i, j, k, xo, yo, delX, delY, Iter
4211: cdef float MIN, theta, c, s, R, MAJ, red, green, blue
+4212: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4212, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4212, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+4213: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4213, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4213, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+4214: cdef np.ndarray[np.int64_t, ndim = 2] II = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4214, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_II = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_II.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4214, __pyx_L1_error) } else {__pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_II = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+4215: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ones); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4215, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4215, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+4216: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4216, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4216, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4216, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+4217: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4217, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4217, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+4218: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4218, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4218, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4218, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+4219: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(p, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4219, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4219, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+4220: cdef np.ndarray[np.float64_t, ndim = 1] Rval = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4220, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Rval = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4220, __pyx_L1_error) } else {__pyx_pybuffernd_Rval.diminfo[0].strides = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rval.diminfo[0].shape = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Rval = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+4221: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4221, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4221, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+4222: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4222, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4222, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4222, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_18 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+4223: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4223, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4223, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4223, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4223, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4223, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+4224: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4224, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4224, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+4225: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4225, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4225, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4225, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4225, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 4225, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_tic = __pyx_t_22;
4226:
+4227: if pdelNxy == []:
__pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4227, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4227, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 4227, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_23) { /* … */ goto __pyx_L3; }
+4228: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4228, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 4228, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4228, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4228, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4228, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_24(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_24(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_6), 2) < 0) __PYX_ERR(0, 4228, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 4228, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4228, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4228, __pyx_L1_error)
__pyx_t_13 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4228, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_14 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4228, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
4229: else:
+4230: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_27 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_27, 0+__pyx_t_26, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 1+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_27, 2+__pyx_t_26, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_27, 4+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_27, 5+__pyx_t_26, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_27, 6+__pyx_t_26, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_27, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 4230, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_27 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_27 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_27);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_27 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4230, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_27 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_27)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_27);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_1), 2) < 0) __PYX_ERR(0, 4230, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 4230, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4230, __pyx_L1_error)
if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4230, __pyx_L1_error)
__pyx_t_13 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4230, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_14 = ((PyArrayObject *)__pyx_t_27);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4230, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_27));
__pyx_t_27 = 0;
}
__pyx_L3:;
4231:
+4232: if labelsorted == 1:
__pyx_t_23 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_23) {
/* … */
}
+4233: X, Y = labelsort(n, X, Y)
__pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); __pyx_t_26 = 1; } } __pyx_t_6 = PyTuple_New(3+__pyx_t_26); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_26, __pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_26, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_26, ((PyObject *)__pyx_v_Y)); __pyx_t_4 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 4233, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_27 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_27 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_27 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_4)->tp_iternext; index = 0; __pyx_t_27 = __pyx_t_24(__pyx_t_4); if (unlikely(!__pyx_t_27)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_27); index = 1; __pyx_t_6 = __pyx_t_24(__pyx_t_4); if (unlikely(!__pyx_t_6)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_4), 2) < 0) __PYX_ERR(0, 4233, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 4233, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4233, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4233, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4233, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0; __pyx_t_14 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4233, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
4234:
4235:
+4236: Iter = 1
__pyx_v_Iter = 1;
4237:
+4238: while True:
while (1) {
+4239: if seq == 1 or seq == 2 or seq == 5:
switch (__pyx_v_seq) {
case 1:
case 2:
case 5:
/* … */
break;
default:
+4240: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+4241: I[X[k], Y[k]] = k + 1
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = __pyx_v_k;
__pyx_t_31 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_32 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_32, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+4242: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_33 = __pyx_v_k;
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = __pyx_v_k;
__pyx_t_37 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_38 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_39 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+4243: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_40 = __pyx_v_k;
__pyx_t_41 = 1;
__pyx_t_42 = __pyx_v_k;
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_45 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_col.diminfo[1].strides));
+4244: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_k;
__pyx_t_50 = __pyx_v_k;
__pyx_t_51 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_52 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_53 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+4245: Theta[k] = Thetafunc(X[k], Y[k], k + 1, 1, 1)
__pyx_t_54 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_55 = __pyx_v_k;
__pyx_t_27 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_1 = __pyx_v_Thetafunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_25 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_26, __pyx_t_4);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_27 = 0;
__pyx_t_4 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4245, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4245, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_57 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
+4246: Rval[k] = Rfunc(X[k], Y[k], k + 1, 1, Theta[k])
__pyx_t_58 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_59 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_60 = __pyx_v_k;
__pyx_t_27 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_6 = __pyx_v_Rfunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_61 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_61, 0+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_61, 1+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_61, 2+__pyx_t_26, __pyx_t_4);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_61, 3+__pyx_t_26, __pyx_int_1);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_61, 4+__pyx_t_26, __pyx_t_27);
__pyx_t_1 = 0;
__pyx_t_25 = 0;
__pyx_t_4 = 0;
__pyx_t_27 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_61, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4246, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4246, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_62 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
}
4247: else:
+4248: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+4249: I[X[k], Y[k]] = k + 1
__pyx_t_63 = __pyx_v_k;
__pyx_t_64 = __pyx_v_k;
__pyx_t_65 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_66 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+4250: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_67 = __pyx_v_k;
__pyx_t_68 = 0;
__pyx_t_69 = __pyx_v_k;
__pyx_t_70 = __pyx_v_k;
__pyx_t_71 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_72 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_73 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_col.diminfo[1].strides));
+4251: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_74 = __pyx_v_k;
__pyx_t_75 = 1;
__pyx_t_76 = __pyx_v_k;
__pyx_t_77 = __pyx_v_k;
__pyx_t_78 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_79 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_80 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_col.diminfo[1].strides));
+4252: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_81 = __pyx_v_k;
__pyx_t_82 = 2;
__pyx_t_83 = __pyx_v_k;
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_86 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_87 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_87, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_col.diminfo[1].strides));
+4253: Rval[k] = Rfunc(X[k], Y[k], k + 1, 1, 0)
__pyx_t_88 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_89 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_4 = __pyx_v_Rfunc; __pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_1 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_26, __pyx_t_27);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_26, __pyx_int_0);
__pyx_t_6 = 0;
__pyx_t_61 = 0;
__pyx_t_27 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4253, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4253, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_90 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
+4254: Theta[k] = Thetafunc(X[k], Y[k], k + 1, Rval[k], 1)
__pyx_t_91 = __pyx_v_k;
__pyx_t_4 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_92 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_93 = __pyx_v_k;
__pyx_t_61 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_6 = __pyx_v_Thetafunc; __pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_5 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_26, __pyx_t_61);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_4 = 0;
__pyx_t_1 = 0;
__pyx_t_27 = 0;
__pyx_t_61 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4254, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4254, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_94 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
}
break;
}
4255:
4256:
+4257: showriteframe(sa, sf, fd, 0, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, 0, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+4258: MAJ = 1.0
__pyx_v_MAJ = 1.0;
+4259: countim = 0
__pyx_v_countim = 0;
+4260: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
}
}
if (!__pyx_t_6) {
__pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
} else {
__pyx_t_61 = PyTuple_New(1+1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_6); __pyx_t_6 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_61, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_61, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4260, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = PyObject_RichCompare(__pyx_t_7, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4260, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 4260, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (!__pyx_t_23) break;
+4261: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
+4262: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+4263: if a[k] == 1:
__pyx_t_95 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+4264: a[k] = 0
__pyx_t_96 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+4265: xo = X[k]
__pyx_t_97 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_X.diminfo[0].strides));
+4266: yo = Y[k]
__pyx_t_98 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Y.diminfo[0].strides));
+4267: theta = Theta[k]
__pyx_t_99 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_Theta.diminfo[0].strides));
+4268: c = math.cos(theta)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_cos); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_61))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_61); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_61, function); } } if (!__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_61, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4268, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_27 = PyTuple_New(1+1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_27, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_27, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; } __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_100 = __pyx_PyFloat_AsFloat(__pyx_t_5); if (unlikely((__pyx_t_100 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 4268, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_c = __pyx_t_100;
+4269: s = -math.sin(theta)
__pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_sin); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_61 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_61); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_61); __pyx_t_61 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = PyNumber_Negative(__pyx_t_5); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_100 = __pyx_PyFloat_AsFloat(__pyx_t_27); if (unlikely((__pyx_t_100 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 4269, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_s = __pyx_t_100;
+4270: Io = I[xo, yo]
__pyx_t_101 = __pyx_v_xo;
__pyx_t_102 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides));
+4271: MIN = MAJ / Rval[k]
__pyx_t_103 = __pyx_v_k;
__pyx_v_MIN = (((__pyx_t_5numpy_float64_t)__pyx_v_MAJ) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Rval.diminfo[0].strides)));
+4272: delX = math.ceil(math.sqrt((MAJ * c) ** 2 + (MIN * s) ** 2))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ceil); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_61 = PyFloat_FromDouble((powf((__pyx_v_MAJ * __pyx_v_c), 2.0) + powf((__pyx_v_MIN * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_61); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_61); __pyx_t_61 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_4, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_104 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_27); if (unlikely((__pyx_t_104 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_delX = __pyx_t_104;
+4273: delY = math.ceil(math.sqrt((MAJ * s) ** 2 + (MIN * c) ** 2))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble((powf((__pyx_v_MAJ * __pyx_v_s), 2.0) + powf((__pyx_v_MIN * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_61 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_61 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_61)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_61); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_61) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_61); __pyx_t_61 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (!__pyx_t_7) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_104 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_27); if (unlikely((__pyx_t_104 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4273, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_delY = __pyx_t_104;
+4274: red = col[k, 0]
__pyx_t_104 = __pyx_v_k;
__pyx_t_105 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_col.diminfo[1].strides));
+4275: green = col[k, 1]
__pyx_t_106 = __pyx_v_k;
__pyx_t_107 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_col.diminfo[1].strides));
+4276: blue = col[k, 2]
__pyx_t_108 = __pyx_v_k;
__pyx_t_109 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_col.diminfo[1].strides));
4277:
+4278: for deli in range(0, delX + 1):
__pyx_t_110 = (__pyx_v_delX + 1);
for (__pyx_t_111 = 0; __pyx_t_111 < __pyx_t_110; __pyx_t_111+=1) {
__pyx_v_deli = __pyx_t_111;
+4279: for delj in range(0, delY + 1):
__pyx_t_112 = (__pyx_v_delY + 1);
for (__pyx_t_113 = 0; __pyx_t_113 < __pyx_t_112; __pyx_t_113+=1) {
__pyx_v_delj = __pyx_t_113;
+4280: if ((deli * c - delj * s) / MAJ) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_23 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_MAJ), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
4281:
+4282: i, j = xo + deli, yo + delj
__pyx_t_114 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_115 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_114;
__pyx_v_j = __pyx_t_115;
+4283: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_116 = (0 <= __pyx_v_i);
if (__pyx_t_116) {
__pyx_t_116 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_117 = (__pyx_t_116 != 0);
if (__pyx_t_117) {
} else {
__pyx_t_23 = __pyx_t_117;
goto __pyx_L28_bool_binop_done;
}
__pyx_t_117 = (0 <= __pyx_v_j);
if (__pyx_t_117) {
__pyx_t_117 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_116 = (__pyx_t_117 != 0);
__pyx_t_23 = __pyx_t_116;
__pyx_L28_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4284: if I[i, j] == 0:
__pyx_t_115 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4285: for dum in range(1):
for (__pyx_t_118 = 0; __pyx_t_118 < 1; __pyx_t_118+=1) {
__pyx_v_dum = __pyx_t_118;
4286:
+4287: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4288: if I[i - 1, j] == Io:
__pyx_t_119 = (__pyx_v_i - 1);
__pyx_t_120 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4289: I[i, j] = Io
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4290: Col[i, j, 2] = red
__pyx_t_123 = __pyx_v_i;
__pyx_t_124 = __pyx_v_j;
__pyx_t_125 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4291: Col[i, j, 1] = green
__pyx_t_126 = __pyx_v_i;
__pyx_t_127 = __pyx_v_j;
__pyx_t_128 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4292: Col[i, j, 0] = blue
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = __pyx_v_j;
__pyx_t_131 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4293: a[k] = 1
__pyx_t_132 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4294: break
goto __pyx_L32_break;
+4295: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4296: if I[i, j - 1] == Io:
__pyx_t_133 = __pyx_v_i;
__pyx_t_134 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4297: I[i, j] = Io
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4298: Col[i, j, 2] = red
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4299: Col[i, j, 1] = green
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4300: Col[i, j, 0] = blue
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4301: a[k] = 1
__pyx_t_146 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4302: break
goto __pyx_L32_break;
4303:
+4304: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4305: if I[i, j + 1] == Io:
__pyx_t_147 = __pyx_v_i;
__pyx_t_148 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4306: I[i, j] = Io
__pyx_t_149 = __pyx_v_i;
__pyx_t_150 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4307: Col[i, j, 2] = red
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = __pyx_v_j;
__pyx_t_153 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4308: Col[i, j, 1] = green
__pyx_t_154 = __pyx_v_i;
__pyx_t_155 = __pyx_v_j;
__pyx_t_156 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_156, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4309: Col[i, j, 0] = blue
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_159 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4310: a[k] = 1
__pyx_t_160 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4311: break
goto __pyx_L32_break;
4312:
4313:
+4314: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L32_break:;
+4315: if I[i + 1, j] == Io:
__pyx_t_161 = (__pyx_v_i + 1);
__pyx_t_162 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4316: I[i, j] = Io
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4317: Col[i, j, 2] = red
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4318: Col[i, j, 1] = green
__pyx_t_168 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_170 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4319: Col[i, j, 0] = blue
__pyx_t_171 = __pyx_v_i;
__pyx_t_172 = __pyx_v_j;
__pyx_t_173 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4320: a[k] = 1
__pyx_t_174 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4321: break
goto __pyx_L32_break;
4322:
4323:
+4324: i, j = xo - deli, yo - delj
__pyx_t_118 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_175 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_118;
__pyx_v_j = __pyx_t_175;
+4325: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_116 = (0 <= __pyx_v_i);
if (__pyx_t_116) {
__pyx_t_116 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_117 = (__pyx_t_116 != 0);
if (__pyx_t_117) {
} else {
__pyx_t_23 = __pyx_t_117;
goto __pyx_L42_bool_binop_done;
}
__pyx_t_117 = (0 <= __pyx_v_j);
if (__pyx_t_117) {
__pyx_t_117 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_116 = (__pyx_t_117 != 0);
__pyx_t_23 = __pyx_t_116;
__pyx_L42_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4326: if I[i, j] == 0:
__pyx_t_175 = __pyx_v_i;
__pyx_t_118 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4327: for dum in range(1):
for (__pyx_t_176 = 0; __pyx_t_176 < 1; __pyx_t_176+=1) {
__pyx_v_dum = __pyx_t_176;
4328:
+4329: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4330: if I[i - 1, j] == Io:
__pyx_t_177 = (__pyx_v_i - 1);
__pyx_t_178 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4331: I[i, j] = Io
__pyx_t_179 = __pyx_v_i;
__pyx_t_180 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4332: Col[i, j, 2] = red
__pyx_t_181 = __pyx_v_i;
__pyx_t_182 = __pyx_v_j;
__pyx_t_183 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4333: Col[i, j, 1] = green
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
__pyx_t_186 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4334: Col[i, j, 0] = blue
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
__pyx_t_189 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4335: a[k] = 1
__pyx_t_190 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_190, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4336: break
goto __pyx_L46_break;
+4337: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4338: if I[i, j - 1] == Io:
__pyx_t_191 = __pyx_v_i;
__pyx_t_192 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4339: I[i, j] = Io
__pyx_t_193 = __pyx_v_i;
__pyx_t_194 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_193, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_194, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4340: Col[i, j, 2] = red
__pyx_t_195 = __pyx_v_i;
__pyx_t_196 = __pyx_v_j;
__pyx_t_197 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4341: Col[i, j, 1] = green
__pyx_t_198 = __pyx_v_i;
__pyx_t_199 = __pyx_v_j;
__pyx_t_200 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4342: Col[i, j, 0] = blue
__pyx_t_201 = __pyx_v_i;
__pyx_t_202 = __pyx_v_j;
__pyx_t_203 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4343: a[k] = 1
__pyx_t_204 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_204, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4344: break
goto __pyx_L46_break;
4345:
+4346: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4347: if I[i, j + 1] == Io:
__pyx_t_205 = __pyx_v_i;
__pyx_t_206 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_206, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4348: I[i, j] = Io
__pyx_t_207 = __pyx_v_i;
__pyx_t_208 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_208, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4349: Col[i, j, 2] = red
__pyx_t_209 = __pyx_v_i;
__pyx_t_210 = __pyx_v_j;
__pyx_t_211 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_210, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_211, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4350: Col[i, j, 1] = green
__pyx_t_212 = __pyx_v_i;
__pyx_t_213 = __pyx_v_j;
__pyx_t_214 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_213, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_214, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4351: Col[i, j, 0] = blue
__pyx_t_215 = __pyx_v_i;
__pyx_t_216 = __pyx_v_j;
__pyx_t_217 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_216, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4352: a[k] = 1
__pyx_t_218 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_218, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4353: break
goto __pyx_L46_break;
4354:
4355:
+4356: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L46_break:;
+4357: if I[i + 1, j] == Io:
__pyx_t_219 = (__pyx_v_i + 1);
__pyx_t_220 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_219, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_220, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4358: I[i, j] = Io
__pyx_t_221 = __pyx_v_i;
__pyx_t_222 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_222, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4359: Col[i, j, 2] = red
__pyx_t_223 = __pyx_v_i;
__pyx_t_224 = __pyx_v_j;
__pyx_t_225 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_224, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4360: Col[i, j, 1] = green
__pyx_t_226 = __pyx_v_i;
__pyx_t_227 = __pyx_v_j;
__pyx_t_228 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_228, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4361: Col[i, j, 0] = blue
__pyx_t_229 = __pyx_v_i;
__pyx_t_230 = __pyx_v_j;
__pyx_t_231 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_229, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4362: a[k] = 1
__pyx_t_232 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_232, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4363: break
goto __pyx_L46_break;
4364:
4365:
+4366: for deli in range(0, -delX - 1, -1):
__pyx_t_110 = ((-__pyx_v_delX) - 1);
for (__pyx_t_111 = 0; __pyx_t_111 > __pyx_t_110; __pyx_t_111-=1) {
__pyx_v_deli = __pyx_t_111;
+4367: for delj in range(0, delY + 1):
__pyx_t_112 = (__pyx_v_delY + 1);
for (__pyx_t_113 = 0; __pyx_t_113 < __pyx_t_112; __pyx_t_113+=1) {
__pyx_v_delj = __pyx_t_113;
+4368: if ((deli * c - delj * s) / MAJ) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_23 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_MAJ), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
4369:
+4370: i, j = xo + deli, yo + delj
__pyx_t_176 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_233 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_176;
__pyx_v_j = __pyx_t_233;
+4371: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_116 = (0 <= __pyx_v_i);
if (__pyx_t_116) {
__pyx_t_116 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_117 = (__pyx_t_116 != 0);
if (__pyx_t_117) {
} else {
__pyx_t_23 = __pyx_t_117;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_117 = (0 <= __pyx_v_j);
if (__pyx_t_117) {
__pyx_t_117 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_116 = (__pyx_t_117 != 0);
__pyx_t_23 = __pyx_t_116;
__pyx_L61_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4372: if I[i, j] == 0:
__pyx_t_233 = __pyx_v_i;
__pyx_t_176 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_233, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4373: for dum in range(1):
for (__pyx_t_234 = 0; __pyx_t_234 < 1; __pyx_t_234+=1) {
__pyx_v_dum = __pyx_t_234;
4374:
+4375: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4376: if I[i - 1, j] == Io:
__pyx_t_235 = (__pyx_v_i - 1);
__pyx_t_236 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_236, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4377: I[i, j] = Io
__pyx_t_237 = __pyx_v_i;
__pyx_t_238 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_237, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_238, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4378: Col[i, j, 2] = red
__pyx_t_239 = __pyx_v_i;
__pyx_t_240 = __pyx_v_j;
__pyx_t_241 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4379: Col[i, j, 1] = green
__pyx_t_242 = __pyx_v_i;
__pyx_t_243 = __pyx_v_j;
__pyx_t_244 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4380: Col[i, j, 0] = blue
__pyx_t_245 = __pyx_v_i;
__pyx_t_246 = __pyx_v_j;
__pyx_t_247 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_246, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4381: a[k] = 1
__pyx_t_248 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_248, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4382: break
goto __pyx_L65_break;
+4383: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4384: if I[i, j - 1] == Io:
__pyx_t_249 = __pyx_v_i;
__pyx_t_250 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_250, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4385: I[i, j] = Io
__pyx_t_251 = __pyx_v_i;
__pyx_t_252 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_251, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_252, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4386: Col[i, j, 2] = red
__pyx_t_253 = __pyx_v_i;
__pyx_t_254 = __pyx_v_j;
__pyx_t_255 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_253, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4387: Col[i, j, 1] = green
__pyx_t_256 = __pyx_v_i;
__pyx_t_257 = __pyx_v_j;
__pyx_t_258 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4388: Col[i, j, 0] = blue
__pyx_t_259 = __pyx_v_i;
__pyx_t_260 = __pyx_v_j;
__pyx_t_261 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4389: a[k] = 1
__pyx_t_262 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_262, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4390: break
goto __pyx_L65_break;
4391:
+4392: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4393: if I[i, j + 1] == Io:
__pyx_t_263 = __pyx_v_i;
__pyx_t_264 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_263, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_264, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4394: I[i, j] = Io
__pyx_t_265 = __pyx_v_i;
__pyx_t_266 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_265, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_266, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4395: Col[i, j, 2] = red
__pyx_t_267 = __pyx_v_i;
__pyx_t_268 = __pyx_v_j;
__pyx_t_269 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4396: Col[i, j, 1] = green
__pyx_t_270 = __pyx_v_i;
__pyx_t_271 = __pyx_v_j;
__pyx_t_272 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_272, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4397: Col[i, j, 0] = blue
__pyx_t_273 = __pyx_v_i;
__pyx_t_274 = __pyx_v_j;
__pyx_t_275 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_273, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_274, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4398: a[k] = 1
__pyx_t_276 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_276, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4399: break
goto __pyx_L65_break;
4400:
4401:
+4402: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L65_break:;
+4403: if I[i + 1, j] == Io:
__pyx_t_277 = (__pyx_v_i + 1);
__pyx_t_278 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_278, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4404: I[i, j] = Io
__pyx_t_279 = __pyx_v_i;
__pyx_t_280 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_280, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4405: Col[i, j, 2] = red
__pyx_t_281 = __pyx_v_i;
__pyx_t_282 = __pyx_v_j;
__pyx_t_283 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_281, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_282, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_283, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4406: Col[i, j, 1] = green
__pyx_t_284 = __pyx_v_i;
__pyx_t_285 = __pyx_v_j;
__pyx_t_286 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_286, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4407: Col[i, j, 0] = blue
__pyx_t_287 = __pyx_v_i;
__pyx_t_288 = __pyx_v_j;
__pyx_t_289 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_287, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4408: a[k] = 1
__pyx_t_290 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4409: break
goto __pyx_L65_break;
4410:
4411:
+4412: i, j = xo - deli, yo - delj
__pyx_t_234 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_291 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_234;
__pyx_v_j = __pyx_t_291;
+4413: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_116 = (0 <= __pyx_v_i);
if (__pyx_t_116) {
__pyx_t_116 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_117 = (__pyx_t_116 != 0);
if (__pyx_t_117) {
} else {
__pyx_t_23 = __pyx_t_117;
goto __pyx_L75_bool_binop_done;
}
__pyx_t_117 = (0 <= __pyx_v_j);
if (__pyx_t_117) {
__pyx_t_117 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_116 = (__pyx_t_117 != 0);
__pyx_t_23 = __pyx_t_116;
__pyx_L75_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4414: if I[i, j] == 0:
__pyx_t_291 = __pyx_v_i;
__pyx_t_234 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_291, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_234, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4415: for dum in range(1):
for (__pyx_t_292 = 0; __pyx_t_292 < 1; __pyx_t_292+=1) {
__pyx_v_dum = __pyx_t_292;
4416:
+4417: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4418: if I[i - 1, j] == Io:
__pyx_t_293 = (__pyx_v_i - 1);
__pyx_t_294 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_294, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4419: I[i, j] = Io
__pyx_t_295 = __pyx_v_i;
__pyx_t_296 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_295, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_296, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4420: Col[i, j, 2] = red
__pyx_t_297 = __pyx_v_i;
__pyx_t_298 = __pyx_v_j;
__pyx_t_299 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4421: Col[i, j, 1] = green
__pyx_t_300 = __pyx_v_i;
__pyx_t_301 = __pyx_v_j;
__pyx_t_302 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_301, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4422: Col[i, j, 0] = blue
__pyx_t_303 = __pyx_v_i;
__pyx_t_304 = __pyx_v_j;
__pyx_t_305 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_304, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4423: a[k] = 1
__pyx_t_306 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_306, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4424: break
goto __pyx_L79_break;
+4425: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4426: if I[i, j - 1] == Io:
__pyx_t_307 = __pyx_v_i;
__pyx_t_308 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_307, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_308, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4427: I[i, j] = Io
__pyx_t_309 = __pyx_v_i;
__pyx_t_310 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_309, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_310, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4428: Col[i, j, 2] = red
__pyx_t_311 = __pyx_v_i;
__pyx_t_312 = __pyx_v_j;
__pyx_t_313 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_311, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4429: Col[i, j, 1] = green
__pyx_t_314 = __pyx_v_i;
__pyx_t_315 = __pyx_v_j;
__pyx_t_316 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_315, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_316, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4430: Col[i, j, 0] = blue
__pyx_t_317 = __pyx_v_i;
__pyx_t_318 = __pyx_v_j;
__pyx_t_319 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_317, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_318, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4431: a[k] = 1
__pyx_t_320 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_320, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4432: break
goto __pyx_L79_break;
4433:
+4434: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4435: if I[i, j + 1] == Io:
__pyx_t_321 = __pyx_v_i;
__pyx_t_322 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_322, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4436: I[i, j] = Io
__pyx_t_323 = __pyx_v_i;
__pyx_t_324 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_323, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_324, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4437: Col[i, j, 2] = red
__pyx_t_325 = __pyx_v_i;
__pyx_t_326 = __pyx_v_j;
__pyx_t_327 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4438: Col[i, j, 1] = green
__pyx_t_328 = __pyx_v_i;
__pyx_t_329 = __pyx_v_j;
__pyx_t_330 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_329, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_330, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4439: Col[i, j, 0] = blue
__pyx_t_331 = __pyx_v_i;
__pyx_t_332 = __pyx_v_j;
__pyx_t_333 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_331, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_332, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_333, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4440: a[k] = 1
__pyx_t_334 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_334, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4441: break
goto __pyx_L79_break;
4442:
4443:
+4444: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L79_break:;
+4445: if I[i + 1, j] == Io:
__pyx_t_335 = (__pyx_v_i + 1);
__pyx_t_336 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_335, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_336, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4446: I[i, j] = Io
__pyx_t_337 = __pyx_v_i;
__pyx_t_338 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_337, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_338, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4447: Col[i, j, 2] = red
__pyx_t_339 = __pyx_v_i;
__pyx_t_340 = __pyx_v_j;
__pyx_t_341 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_341, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4448: Col[i, j, 1] = green
__pyx_t_342 = __pyx_v_i;
__pyx_t_343 = __pyx_v_j;
__pyx_t_344 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_343, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_344, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4449: Col[i, j, 0] = blue
__pyx_t_345 = __pyx_v_i;
__pyx_t_346 = __pyx_v_j;
__pyx_t_347 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_345, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_346, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_347, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4450: a[k] = 1
__pyx_t_348 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_348, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4451: break
goto __pyx_L79_break;
4452:
4453:
4454:
+4455: if a[k] == 0:
__pyx_t_110 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4456: xmin = max(0, xo - delX)
__pyx_t_111 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_349 = 0;
if (((__pyx_t_111 > __pyx_t_349) != 0)) {
__pyx_t_112 = __pyx_t_111;
} else {
__pyx_t_112 = __pyx_t_349;
}
__pyx_v_xmin = __pyx_t_112;
+4457: xmax = min(m - 1, xo + delX)
__pyx_t_112 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_111 = (__pyx_v_m - 1);
if (((__pyx_t_112 < __pyx_t_111) != 0)) {
__pyx_t_113 = __pyx_t_112;
} else {
__pyx_t_113 = __pyx_t_111;
}
__pyx_v_xmax = __pyx_t_113;
+4458: ymin = max(0, yo - delY)
__pyx_t_113 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_349 = 0;
if (((__pyx_t_113 > __pyx_t_349) != 0)) {
__pyx_t_112 = __pyx_t_113;
} else {
__pyx_t_112 = __pyx_t_349;
}
__pyx_v_ymin = __pyx_t_112;
+4459: ymax = min(n - 1, yo + delY)
__pyx_t_112 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_113 = (__pyx_v_n - 1);
if (((__pyx_t_112 < __pyx_t_113) != 0)) {
__pyx_t_111 = __pyx_t_112;
} else {
__pyx_t_111 = __pyx_t_113;
}
__pyx_v_ymax = __pyx_t_111;
+4460: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_111 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
4461:
+4462: MAJ = MAJ + 1.0
__pyx_v_MAJ = (__pyx_v_MAJ + 1.0);
+4463: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
}
+4464: if asy == 0:
__pyx_t_23 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4465: break
goto __pyx_L12_break;
4466: else:
+4467: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4467, __pyx_L1_error)
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_all); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4467, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_4 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_4 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_4)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
}
}
if (__pyx_t_4) {
__pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4467, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
} else {
__pyx_t_27 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4467, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_27);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_1 = __Pyx_PyInt_EqObjC(__pyx_t_27, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4467, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 4467, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if (__pyx_t_23) {
/* … */
}
+4468: break
goto __pyx_L12_break;
4469: else:
+4470: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4470, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+4471: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_4); __pyx_t_1 = 0; __pyx_t_4 = 0; __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4471, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4471, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4471, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+4472: a = np.ones(p, dtype=np.int8)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ones); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_27, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_4, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4472, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4472, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4472, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+4473: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_centroids); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_5 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); __pyx_t_26 = 1; } } __pyx_t_61 = PyTuple_New(4+__pyx_t_26); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_61, 0+__pyx_t_26, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_61, 1+__pyx_t_26, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_61, 2+__pyx_t_26, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_61, 3+__pyx_t_26, __pyx_t_27); __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_27 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_61, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 4473, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_61 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_4 = PyList_GET_ITEM(sequence, 0); __pyx_t_61 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(__pyx_t_61); #else __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_61 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_27 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4473, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_27)->tp_iternext; index = 0; __pyx_t_4 = __pyx_t_24(__pyx_t_27); if (unlikely(!__pyx_t_4)) goto __pyx_L91_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); index = 1; __pyx_t_61 = __pyx_t_24(__pyx_t_27); if (unlikely(!__pyx_t_61)) goto __pyx_L91_unpacking_failed; __Pyx_GOTREF(__pyx_t_61); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_27), 2) < 0) __PYX_ERR(0, 4473, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; goto __pyx_L92_unpacking_done; __pyx_L91_unpacking_failed:; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 4473, __pyx_L1_error) __pyx_L92_unpacking_done:; } if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4473, __pyx_L1_error) if (!(likely(((__pyx_t_61) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_61, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4473, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4473, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0; __pyx_t_14 = ((PyArrayObject *)__pyx_t_61); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 4473, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_61)); __pyx_t_61 = 0;
+4474: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
4475:
+4476: toc = time.time()
__pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4476, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_61 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_61 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_61)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_61); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (__pyx_t_61) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_61); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4476, __pyx_L1_error) __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4476, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 4476, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_toc = __pyx_t_22;
+4477: obj.exetime = toc - tic
__pyx_t_1 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4477, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_1) < 0) __PYX_ERR(0, 4477, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+4478: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 4478, __pyx_L1_error)
+4479: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 4479, __pyx_L1_error)
+4480: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 4480, __pyx_L1_error)
+4481: obj.ThetaValues = Theta
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_ThetaValues, ((PyObject *)__pyx_v_Theta)) < 0) __PYX_ERR(0, 4481, __pyx_L1_error)
+4482: obj.Rvalues = Rval
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Rvalues, ((PyObject *)__pyx_v_Rval)) < 0) __PYX_ERR(0, 4482, __pyx_L1_error)
+4483: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 4483, __pyx_L1_error)
+4484: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
4485:
+4486: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_39Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_39Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_39Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_39Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_38Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_38Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_R;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_seq;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_MAJceil;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_MIN;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_dr;
float __pyx_v_tmp;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
double __pyx_v_adotValmax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_27);
__Pyx_XDECREF(__pyx_t_61);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__49 = PyTuple_Pack(63, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_R, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Thetafunc, __pyx_n_s_Adotfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_MN, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_countim, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_MIN, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_MAJ, __pyx_n_s_adotVal, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_adotValmax); if (unlikely(!__pyx_tuple__49)) __PYX_ERR(0, 4486, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__49);
__Pyx_GIVEREF(__pyx_tuple__49);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_39Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_without_aspect_with_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4486, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_10, __pyx_t_2) < 0) __PYX_ERR(0, 4486, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__50 = (PyObject*)__Pyx_PyCode_New(1, 0, 63, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__49, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_10, 4486, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__50)) __PYX_ERR(0, 4486, __pyx_L1_error)
4487:
4488: # Grabbing data from the input Object
+4489: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4489, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4489, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+4490: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4490, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4490, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+4491: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4491, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4491, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+4492: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4492, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4492, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+4493: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4493, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4493, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+4494: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4494, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 4494, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+4495: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4495, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4495, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+4496: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4496, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4496, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+4497: cdef long long seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4497, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4497, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_2;
+4498: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4498, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_4;
+4499: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4499, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_4;
+4500: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+4501: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4501, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+4502: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4502, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
+4503: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4503, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
4504:
4505: # Declaring other variables
4506: cdef double tic, toc
4507: cdef long long deli, delj, MN, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, dum, countim, i, j, k, xo, yo, delX, delY, MAJceil, MINceil, Iter
4508: cdef float MIN, theta, c, s, dr, tmp, red, green, blue
+4509: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4509, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4509, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+4510: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4510, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4510, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+4511: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4511, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4511, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+4512: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4512, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4512, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+4513: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4513, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4513, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4513, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+4514: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(p, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4514, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4514, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4514, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+4515: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4515, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4515, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4515, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+4516: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(p, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4516, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4516, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4516, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+4517: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4517, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4517, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4517, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+4518: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4518, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4518, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_18 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+4519: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4519, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+4520: col = np.random.random((p, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4520, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4520, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+4521: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (__pyx_t_6) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4521, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4521, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 4521, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_tic = __pyx_t_22;
4522:
+4523: if pdelNxy == []:
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4523, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 4523, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_23) { /* … */ goto __pyx_L3; }
+4524: [X, Y] = randindex2D(m, n, p)
__pyx_t_1 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 4524, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_6 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_6);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4524, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_5)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_24(__pyx_t_5); if (unlikely(!__pyx_t_7)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_6 = __pyx_t_24(__pyx_t_5); if (unlikely(!__pyx_t_6)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_6);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_5), 2) < 0) __PYX_ERR(0, 4524, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 4524, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4524, __pyx_L1_error)
if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4524, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4524, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_6);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4524, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6));
__pyx_t_6 = 0;
4525: else:
+4526: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_26 = 1;
}
}
__pyx_t_27 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_27, 0+__pyx_t_26, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 1+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_27, 2+__pyx_t_26, __pyx_t_6);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_27, 4+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_27, 5+__pyx_t_26, __pyx_t_8);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_27, 6+__pyx_t_26, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_5 = 0;
__pyx_t_8 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_27, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 4526, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_27 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_27 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_27);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_27 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_8 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4526, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_8)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_24(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_27 = __pyx_t_24(__pyx_t_8); if (unlikely(!__pyx_t_27)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_27);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_8), 2) < 0) __PYX_ERR(0, 4526, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 4526, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4526, __pyx_L1_error)
if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4526, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4526, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_27);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4526, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_27));
__pyx_t_27 = 0;
}
__pyx_L3:;
4527:
+4528: if labelsorted == 1:
__pyx_t_23 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_23) {
/* … */
}
+4529: X, Y = labelsort(n, X, Y)
__pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); __pyx_t_26 = 1; } } __pyx_t_5 = PyTuple_New(3+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_t_7); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, ((PyObject *)__pyx_v_Y)); __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 4529, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_27 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_27 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_27 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_27 = __pyx_t_24(__pyx_t_7); if (unlikely(!__pyx_t_27)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_27); index = 1; __pyx_t_5 = __pyx_t_24(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_7), 2) < 0) __PYX_ERR(0, 4529, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 4529, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4529, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4529, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4529, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4529, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
4530:
+4531: Iter = 1
__pyx_v_Iter = 1;
+4532: while True:
while (1) {
4533:
+4534: if seq == 1 or seq == 2 or seq == 3:
switch (__pyx_v_seq) {
case 1:
case 2:
case 3:
/* … */
break;
default:
+4535: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+4536: I[X[k], Y[k]] = k + 1
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = __pyx_v_k;
__pyx_t_31 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_32 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_32, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+4537: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_33 = __pyx_v_k;
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = __pyx_v_k;
__pyx_t_37 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_38 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_39 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+4538: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_40 = __pyx_v_k;
__pyx_t_41 = 1;
__pyx_t_42 = __pyx_v_k;
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_45 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_col.diminfo[1].strides));
+4539: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_k;
__pyx_t_50 = __pyx_v_k;
__pyx_t_51 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_52 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_53 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+4540: Theta[k] = Thetafunc(X[k], Y[k], k + 1, 1, 1)
__pyx_t_54 = __pyx_v_k;
__pyx_t_5 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4540, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_55 = __pyx_v_k;
__pyx_t_27 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4540, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4540, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_8 = __pyx_v_Thetafunc; __pyx_t_6 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
__pyx_t_26 = 1;
}
}
__pyx_t_25 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4540, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = NULL;
}
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_26, __pyx_t_7);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_27 = 0;
__pyx_t_7 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4540, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4540, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_57 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
+4541: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, Theta[k], 1)
__pyx_t_58 = __pyx_v_k;
__pyx_t_8 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4541, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_59 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 4541, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4541, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_60 = __pyx_v_k;
__pyx_t_27 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4541, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_5 = __pyx_v_Adotfunc; __pyx_t_6 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
__pyx_t_26 = 1;
}
}
__pyx_t_61 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4541, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
if (__pyx_t_6) {
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_6); __pyx_t_6 = NULL;
}
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_61, 0+__pyx_t_26, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_61, 1+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_61, 2+__pyx_t_26, __pyx_t_7);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_61, 3+__pyx_t_26, __pyx_t_27);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_61, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = 0;
__pyx_t_27 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_61, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4541, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4541, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_62 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
}
4542: else:
+4543: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+4544: I[X[k], Y[k]] = k + 1
__pyx_t_63 = __pyx_v_k;
__pyx_t_64 = __pyx_v_k;
__pyx_t_65 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_66 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+4545: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_67 = __pyx_v_k;
__pyx_t_68 = 0;
__pyx_t_69 = __pyx_v_k;
__pyx_t_70 = __pyx_v_k;
__pyx_t_71 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_72 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_73 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_col.diminfo[1].strides));
+4546: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_74 = __pyx_v_k;
__pyx_t_75 = 1;
__pyx_t_76 = __pyx_v_k;
__pyx_t_77 = __pyx_v_k;
__pyx_t_78 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_79 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_80 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_col.diminfo[1].strides));
+4547: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_81 = __pyx_v_k;
__pyx_t_82 = 2;
__pyx_t_83 = __pyx_v_k;
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_86 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_87 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_87, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_col.diminfo[1].strides));
+4548: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, 0, 1)
__pyx_t_88 = __pyx_v_k;
__pyx_t_5 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4548, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_89 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4548, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4548, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_7 = __pyx_v_Adotfunc; __pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_26 = 1;
}
}
__pyx_t_8 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4548, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_26, __pyx_t_27);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_26, __pyx_int_0);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_61 = 0;
__pyx_t_27 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4548, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4548, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_90 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
+4549: Theta[k] = Thetafunc(X[k], Y[k], k + 1, 1, adotVal[k])
__pyx_t_91 = __pyx_v_k;
__pyx_t_7 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_92 = __pyx_v_k;
__pyx_t_8 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_93 = __pyx_v_k;
__pyx_t_61 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_5 = __pyx_v_Thetafunc; __pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
__pyx_t_26 = 1;
}
}
__pyx_t_6 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_26, __pyx_t_7);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_26, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_26, __pyx_t_27);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_26, __pyx_int_1);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_6, 4+__pyx_t_26, __pyx_t_61);
__pyx_t_7 = 0;
__pyx_t_8 = 0;
__pyx_t_27 = 0;
__pyx_t_61 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4549, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 4549, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_94 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
}
break;
}
4550:
4551:
4552:
+4553: showriteframe(sa, sf, fd, 0, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, 0, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
4554:
+4555: countim = 0
__pyx_v_countim = 0;
+4556: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
}
}
if (!__pyx_t_5) {
__pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
} else {
__pyx_t_61 = PyTuple_New(1+1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_5); __pyx_t_5 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_61, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_61, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4556, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
}
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4556, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 4556, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
if (!__pyx_t_23) break;
+4557: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
+4558: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+4559: for i in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_i = __pyx_t_28;
+4560: if a[i] == 1:
__pyx_t_95 = __pyx_v_i;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+4561: tmp = adotVal[i]
__pyx_t_96 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+4562: if tmp > adotValmax:
__pyx_t_23 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_23) {
/* … */
}
+4563: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
4564:
+4565: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+4566: if a[k] == 1:
__pyx_t_97 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+4567: a[k] = 0
__pyx_t_98 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+4568: xo = X[k]
__pyx_t_99 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_X.diminfo[0].strides));
+4569: yo = Y[k]
__pyx_t_100 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_Y.diminfo[0].strides));
+4570: Io = I[xo, yo]
__pyx_t_101 = __pyx_v_xo;
__pyx_t_102 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides));
+4571: theta = Theta[k]
__pyx_t_103 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Theta.diminfo[0].strides));
4572:
+4573: c = math.cos(theta)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_cos); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_61))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_61); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_61, function); } } if (!__pyx_t_5) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_61, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4573, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_27 = PyTuple_New(1+1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_27, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_27, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4573, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; } __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 4573, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_c = __pyx_t_3;
+4574: s = -math.sin(theta)
__pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_sin); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_61 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (!__pyx_t_1) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_61); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_61); __pyx_t_61 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = PyNumber_Negative(__pyx_t_6); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_27); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 4574, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_s = __pyx_t_3;
4575:
+4576: dr = adotVal[k] / adotValmax
__pyx_t_104 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+4577: MAJ[k] = MAJ[k] + dr
__pyx_t_105 = __pyx_v_k;
__pyx_t_106 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+4578: MIN = MAJ[k] / R
__pyx_t_107 = __pyx_v_k;
__pyx_v_MIN = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_MAJ.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_R));
+4579: MAJceil = math.ceil(MAJ[k])
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_108 = __pyx_v_k; __pyx_t_6 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_MAJ.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_61 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_61 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_61)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_61); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_61) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4579, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_61); __pyx_t_61 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_109 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_27); if (unlikely((__pyx_t_109 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4579, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_MAJceil = __pyx_t_109;
+4580: MINceil = math.ceil(MIN)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ceil); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_6) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4580, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_61 = PyTuple_New(1+1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_61, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_109 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_27); if (unlikely((__pyx_t_109 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4580, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_MINceil = __pyx_t_109;
4581:
4582:
+4583: delX = math.ceil(math.sqrt((MAJ[k] * c) ** 2 + (MIN * s) ** 2))
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ceil); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_109 = __pyx_v_k; __pyx_t_5 = PyFloat_FromDouble((pow(((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_MAJ.diminfo[0].strides)) * __pyx_v_c), 2.0) + powf((__pyx_v_MIN * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_61))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_61); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_61, function); } } if (!__pyx_t_6) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_61, __pyx_t_1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_7, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_110 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_27); if (unlikely((__pyx_t_110 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4583, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_delX = __pyx_t_110;
+4584: delY = math.ceil(math.sqrt((MAJ[k] * s) ** 2 + (MIN * c) ** 2))
__pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_110 = __pyx_v_k; __pyx_t_1 = PyFloat_FromDouble((pow(((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_MAJ.diminfo[0].strides)) * __pyx_v_s), 2.0) + powf((__pyx_v_MIN * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_61 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_61); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_61 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_6) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_61); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_61); __pyx_t_61 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_111 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_27); if (unlikely((__pyx_t_111 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4584, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_delY = __pyx_t_111;
+4585: red = col[k, 0]
__pyx_t_111 = __pyx_v_k;
__pyx_t_112 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_col.diminfo[1].strides));
+4586: green = col[k, 1]
__pyx_t_113 = __pyx_v_k;
__pyx_t_114 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_col.diminfo[1].strides));
+4587: blue = col[k, 2]
__pyx_t_115 = __pyx_v_k;
__pyx_t_116 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_col.diminfo[1].strides));
4588:
4589: # OUTWARD
4590:
+4591: for deli in range(0, delX + 1):
__pyx_t_117 = (__pyx_v_delX + 1);
for (__pyx_t_118 = 0; __pyx_t_118 < __pyx_t_117; __pyx_t_118+=1) {
__pyx_v_deli = __pyx_t_118;
+4592: for delj in range(0, delY + 1):
__pyx_t_119 = (__pyx_v_delY + 1);
for (__pyx_t_120 = 0; __pyx_t_120 < __pyx_t_119; __pyx_t_120+=1) {
__pyx_v_delj = __pyx_t_120;
+4593: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_121 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
4594:
+4595: i, j = xo + deli, yo + delj
__pyx_t_122 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_123 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_122;
__pyx_v_j = __pyx_t_123;
+4596: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L32_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L32_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4597: if I[i, j] == 0:
__pyx_t_123 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4598: for dum in range(1):
for (__pyx_t_126 = 0; __pyx_t_126 < 1; __pyx_t_126+=1) {
__pyx_v_dum = __pyx_t_126;
4599:
+4600: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4601: if I[i - 1, j] == Io:
__pyx_t_127 = (__pyx_v_i - 1);
__pyx_t_128 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4602: I[i, j] = Io
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4603: Col[i, j, 2] = red
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = __pyx_v_j;
__pyx_t_133 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4604: Col[i, j, 1] = green
__pyx_t_134 = __pyx_v_i;
__pyx_t_135 = __pyx_v_j;
__pyx_t_136 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4605: Col[i, j, 0] = blue
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
__pyx_t_139 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4606: a[k] = 1
__pyx_t_140 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4607: break
goto __pyx_L36_break;
+4608: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4609: if I[i, j - 1] == Io:
__pyx_t_141 = __pyx_v_i;
__pyx_t_142 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_141, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_142, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4610: I[i, j] = Io
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4611: Col[i, j, 2] = red
__pyx_t_145 = __pyx_v_i;
__pyx_t_146 = __pyx_v_j;
__pyx_t_147 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4612: Col[i, j, 1] = green
__pyx_t_148 = __pyx_v_i;
__pyx_t_149 = __pyx_v_j;
__pyx_t_150 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_149, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_150, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4613: Col[i, j, 0] = blue
__pyx_t_151 = __pyx_v_i;
__pyx_t_152 = __pyx_v_j;
__pyx_t_153 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4614: a[k] = 1
__pyx_t_154 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4615: break
goto __pyx_L36_break;
4616:
+4617: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4618: if I[i, j + 1] == Io:
__pyx_t_155 = __pyx_v_i;
__pyx_t_156 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4619: I[i, j] = Io
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4620: Col[i, j, 2] = red
__pyx_t_159 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_161 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4621: Col[i, j, 1] = green
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_164 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4622: Col[i, j, 0] = blue
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4623: a[k] = 1
__pyx_t_168 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4624: break
goto __pyx_L36_break;
4625:
4626:
+4627: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L36_break:;
+4628: if I[i + 1, j] == Io:
__pyx_t_169 = (__pyx_v_i + 1);
__pyx_t_170 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_169, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_170, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4629: I[i, j] = Io
__pyx_t_171 = __pyx_v_i;
__pyx_t_172 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4630: Col[i, j, 2] = red
__pyx_t_173 = __pyx_v_i;
__pyx_t_174 = __pyx_v_j;
__pyx_t_175 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4631: Col[i, j, 1] = green
__pyx_t_176 = __pyx_v_i;
__pyx_t_177 = __pyx_v_j;
__pyx_t_178 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_176, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_177, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_178, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4632: Col[i, j, 0] = blue
__pyx_t_179 = __pyx_v_i;
__pyx_t_180 = __pyx_v_j;
__pyx_t_181 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4633: a[k] = 1
__pyx_t_182 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4634: break
goto __pyx_L36_break;
4635:
4636:
+4637: i, j = xo - deli, yo - delj
__pyx_t_126 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_183 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_126;
__pyx_v_j = __pyx_t_183;
+4638: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L46_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L46_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4639: if I[i, j] == 0:
__pyx_t_183 = __pyx_v_i;
__pyx_t_126 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_183, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_126, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4640: for dum in range(1):
for (__pyx_t_184 = 0; __pyx_t_184 < 1; __pyx_t_184+=1) {
__pyx_v_dum = __pyx_t_184;
4641:
+4642: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4643: if I[i - 1, j] == Io:
__pyx_t_185 = (__pyx_v_i - 1);
__pyx_t_186 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_186, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4644: I[i, j] = Io
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4645: Col[i, j, 2] = red
__pyx_t_189 = __pyx_v_i;
__pyx_t_190 = __pyx_v_j;
__pyx_t_191 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_191, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4646: Col[i, j, 1] = green
__pyx_t_192 = __pyx_v_i;
__pyx_t_193 = __pyx_v_j;
__pyx_t_194 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_192, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_193, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_194, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4647: Col[i, j, 0] = blue
__pyx_t_195 = __pyx_v_i;
__pyx_t_196 = __pyx_v_j;
__pyx_t_197 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4648: a[k] = 1
__pyx_t_198 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4649: break
goto __pyx_L50_break;
+4650: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4651: if I[i, j - 1] == Io:
__pyx_t_199 = __pyx_v_i;
__pyx_t_200 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_199, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_200, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4652: I[i, j] = Io
__pyx_t_201 = __pyx_v_i;
__pyx_t_202 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4653: Col[i, j, 2] = red
__pyx_t_203 = __pyx_v_i;
__pyx_t_204 = __pyx_v_j;
__pyx_t_205 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4654: Col[i, j, 1] = green
__pyx_t_206 = __pyx_v_i;
__pyx_t_207 = __pyx_v_j;
__pyx_t_208 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_207, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_208, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4655: Col[i, j, 0] = blue
__pyx_t_209 = __pyx_v_i;
__pyx_t_210 = __pyx_v_j;
__pyx_t_211 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_210, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_211, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4656: a[k] = 1
__pyx_t_212 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4657: break
goto __pyx_L50_break;
4658:
+4659: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4660: if I[i, j + 1] == Io:
__pyx_t_213 = __pyx_v_i;
__pyx_t_214 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_213, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_214, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4661: I[i, j] = Io
__pyx_t_215 = __pyx_v_i;
__pyx_t_216 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_216, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4662: Col[i, j, 2] = red
__pyx_t_217 = __pyx_v_i;
__pyx_t_218 = __pyx_v_j;
__pyx_t_219 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_219, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4663: Col[i, j, 1] = green
__pyx_t_220 = __pyx_v_i;
__pyx_t_221 = __pyx_v_j;
__pyx_t_222 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_220, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_221, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_222, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4664: Col[i, j, 0] = blue
__pyx_t_223 = __pyx_v_i;
__pyx_t_224 = __pyx_v_j;
__pyx_t_225 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_224, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4665: a[k] = 1
__pyx_t_226 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4666: break
goto __pyx_L50_break;
4667:
4668:
+4669: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L50_break:;
+4670: if I[i + 1, j] == Io:
__pyx_t_227 = (__pyx_v_i + 1);
__pyx_t_228 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_227, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_228, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4671: I[i, j] = Io
__pyx_t_229 = __pyx_v_i;
__pyx_t_230 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_229, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_230, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4672: Col[i, j, 2] = red
__pyx_t_231 = __pyx_v_i;
__pyx_t_232 = __pyx_v_j;
__pyx_t_233 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4673: Col[i, j, 1] = green
__pyx_t_234 = __pyx_v_i;
__pyx_t_235 = __pyx_v_j;
__pyx_t_236 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_235, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_236, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4674: Col[i, j, 0] = blue
__pyx_t_237 = __pyx_v_i;
__pyx_t_238 = __pyx_v_j;
__pyx_t_239 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_238, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4675: a[k] = 1
__pyx_t_240 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4676: break
goto __pyx_L50_break;
4677:
4678:
+4679: for deli in range(0, -delX - 1, -1):
__pyx_t_117 = ((-__pyx_v_delX) - 1);
for (__pyx_t_118 = 0; __pyx_t_118 > __pyx_t_117; __pyx_t_118-=1) {
__pyx_v_deli = __pyx_t_118;
+4680: for delj in range(0, delY + 1):
__pyx_t_119 = (__pyx_v_delY + 1);
for (__pyx_t_120 = 0; __pyx_t_120 < __pyx_t_119; __pyx_t_120+=1) {
__pyx_v_delj = __pyx_t_120;
+4681: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_184 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
4682:
+4683: i, j = xo + deli, yo + delj
__pyx_t_241 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_242 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_241;
__pyx_v_j = __pyx_t_242;
+4684: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L65_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L65_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4685: if I[i, j] == 0:
__pyx_t_242 = __pyx_v_i;
__pyx_t_241 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4686: for dum in range(1):
for (__pyx_t_243 = 0; __pyx_t_243 < 1; __pyx_t_243+=1) {
__pyx_v_dum = __pyx_t_243;
4687:
+4688: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4689: if I[i - 1, j] == Io:
__pyx_t_244 = (__pyx_v_i - 1);
__pyx_t_245 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_244, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_245, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4690: I[i, j] = Io
__pyx_t_246 = __pyx_v_i;
__pyx_t_247 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_246, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_247, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4691: Col[i, j, 2] = red
__pyx_t_248 = __pyx_v_i;
__pyx_t_249 = __pyx_v_j;
__pyx_t_250 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_248, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_249, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_250, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4692: Col[i, j, 1] = green
__pyx_t_251 = __pyx_v_i;
__pyx_t_252 = __pyx_v_j;
__pyx_t_253 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_251, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_252, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_253, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4693: Col[i, j, 0] = blue
__pyx_t_254 = __pyx_v_i;
__pyx_t_255 = __pyx_v_j;
__pyx_t_256 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4694: a[k] = 1
__pyx_t_257 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_257, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4695: break
goto __pyx_L69_break;
+4696: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4697: if I[i, j - 1] == Io:
__pyx_t_258 = __pyx_v_i;
__pyx_t_259 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_258, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_259, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4698: I[i, j] = Io
__pyx_t_260 = __pyx_v_i;
__pyx_t_261 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_260, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_261, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4699: Col[i, j, 2] = red
__pyx_t_262 = __pyx_v_i;
__pyx_t_263 = __pyx_v_j;
__pyx_t_264 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4700: Col[i, j, 1] = green
__pyx_t_265 = __pyx_v_i;
__pyx_t_266 = __pyx_v_j;
__pyx_t_267 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_265, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4701: Col[i, j, 0] = blue
__pyx_t_268 = __pyx_v_i;
__pyx_t_269 = __pyx_v_j;
__pyx_t_270 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4702: a[k] = 1
__pyx_t_271 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_271, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4703: break
goto __pyx_L69_break;
4704:
+4705: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4706: if I[i, j + 1] == Io:
__pyx_t_272 = __pyx_v_i;
__pyx_t_273 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_272, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_273, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4707: I[i, j] = Io
__pyx_t_274 = __pyx_v_i;
__pyx_t_275 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_274, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_275, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4708: Col[i, j, 2] = red
__pyx_t_276 = __pyx_v_i;
__pyx_t_277 = __pyx_v_j;
__pyx_t_278 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_278, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4709: Col[i, j, 1] = green
__pyx_t_279 = __pyx_v_i;
__pyx_t_280 = __pyx_v_j;
__pyx_t_281 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_280, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_281, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4710: Col[i, j, 0] = blue
__pyx_t_282 = __pyx_v_i;
__pyx_t_283 = __pyx_v_j;
__pyx_t_284 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_283, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4711: a[k] = 1
__pyx_t_285 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_285, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4712: break
goto __pyx_L69_break;
4713:
4714:
+4715: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L69_break:;
+4716: if I[i + 1, j] == Io:
__pyx_t_286 = (__pyx_v_i + 1);
__pyx_t_287 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_286, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_287, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4717: I[i, j] = Io
__pyx_t_288 = __pyx_v_i;
__pyx_t_289 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_288, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_289, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4718: Col[i, j, 2] = red
__pyx_t_290 = __pyx_v_i;
__pyx_t_291 = __pyx_v_j;
__pyx_t_292 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4719: Col[i, j, 1] = green
__pyx_t_293 = __pyx_v_i;
__pyx_t_294 = __pyx_v_j;
__pyx_t_295 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4720: Col[i, j, 0] = blue
__pyx_t_296 = __pyx_v_i;
__pyx_t_297 = __pyx_v_j;
__pyx_t_298 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4721: a[k] = 1
__pyx_t_299 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_299, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4722: break
goto __pyx_L69_break;
4723:
4724:
+4725: i, j = xo - deli, yo - delj
__pyx_t_243 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_300 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_243;
__pyx_v_j = __pyx_t_300;
+4726: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L79_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L79_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4727: if I[i, j] == 0:
__pyx_t_300 = __pyx_v_i;
__pyx_t_243 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_300, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_243, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4728: for dum in range(1):
for (__pyx_t_301 = 0; __pyx_t_301 < 1; __pyx_t_301+=1) {
__pyx_v_dum = __pyx_t_301;
4729:
+4730: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4731: if I[i - 1, j] == Io:
__pyx_t_302 = (__pyx_v_i - 1);
__pyx_t_303 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_303, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4732: I[i, j] = Io
__pyx_t_304 = __pyx_v_i;
__pyx_t_305 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_304, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_305, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4733: Col[i, j, 2] = red
__pyx_t_306 = __pyx_v_i;
__pyx_t_307 = __pyx_v_j;
__pyx_t_308 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4734: Col[i, j, 1] = green
__pyx_t_309 = __pyx_v_i;
__pyx_t_310 = __pyx_v_j;
__pyx_t_311 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_311, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4735: Col[i, j, 0] = blue
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = __pyx_v_j;
__pyx_t_314 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4736: a[k] = 1
__pyx_t_315 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_315, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4737: break
goto __pyx_L83_break;
+4738: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4739: if I[i, j - 1] == Io:
__pyx_t_316 = __pyx_v_i;
__pyx_t_317 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_317, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4740: I[i, j] = Io
__pyx_t_318 = __pyx_v_i;
__pyx_t_319 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_318, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_319, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4741: Col[i, j, 2] = red
__pyx_t_320 = __pyx_v_i;
__pyx_t_321 = __pyx_v_j;
__pyx_t_322 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4742: Col[i, j, 1] = green
__pyx_t_323 = __pyx_v_i;
__pyx_t_324 = __pyx_v_j;
__pyx_t_325 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4743: Col[i, j, 0] = blue
__pyx_t_326 = __pyx_v_i;
__pyx_t_327 = __pyx_v_j;
__pyx_t_328 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4744: a[k] = 1
__pyx_t_329 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_329, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4745: break
goto __pyx_L83_break;
4746:
+4747: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4748: if I[i, j + 1] == Io:
__pyx_t_330 = __pyx_v_i;
__pyx_t_331 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_330, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_331, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4749: I[i, j] = Io
__pyx_t_332 = __pyx_v_i;
__pyx_t_333 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_332, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_333, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4750: Col[i, j, 2] = red
__pyx_t_334 = __pyx_v_i;
__pyx_t_335 = __pyx_v_j;
__pyx_t_336 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4751: Col[i, j, 1] = green
__pyx_t_337 = __pyx_v_i;
__pyx_t_338 = __pyx_v_j;
__pyx_t_339 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4752: Col[i, j, 0] = blue
__pyx_t_340 = __pyx_v_i;
__pyx_t_341 = __pyx_v_j;
__pyx_t_342 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_341, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_342, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4753: a[k] = 1
__pyx_t_343 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_343, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4754: break
goto __pyx_L83_break;
4755:
4756:
+4757: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L83_break:;
+4758: if I[i + 1, j] == Io:
__pyx_t_344 = (__pyx_v_i + 1);
__pyx_t_345 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_344, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_345, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4759: I[i, j] = Io
__pyx_t_346 = __pyx_v_i;
__pyx_t_347 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_347, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4760: Col[i, j, 2] = red
__pyx_t_348 = __pyx_v_i;
__pyx_t_349 = __pyx_v_j;
__pyx_t_350 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_348, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4761: Col[i, j, 1] = green
__pyx_t_351 = __pyx_v_i;
__pyx_t_352 = __pyx_v_j;
__pyx_t_353 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4762: Col[i, j, 0] = blue
__pyx_t_354 = __pyx_v_i;
__pyx_t_355 = __pyx_v_j;
__pyx_t_356 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_355, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_356, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4763: a[k] = 1
__pyx_t_357 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_357, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4764: break
goto __pyx_L83_break;
4765:
4766:
4767:
4768: # INWARD
4769:
+4770: for deli in range(delX, -1, -1):
for (__pyx_t_117 = __pyx_v_delX; __pyx_t_117 > -1L; __pyx_t_117-=1) {
__pyx_v_deli = __pyx_t_117;
+4771: for delj in range(0, delY + 1):
__pyx_t_118 = (__pyx_v_delY + 1);
for (__pyx_t_119 = 0; __pyx_t_119 < __pyx_t_118; __pyx_t_119+=1) {
__pyx_v_delj = __pyx_t_119;
+4772: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_120 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
4773:
+4774: i, j = xo + deli, yo + delj
__pyx_t_301 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_358 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_301;
__pyx_v_j = __pyx_t_358;
+4775: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L98_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L98_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4776: if I[i, j] == 0:
__pyx_t_358 = __pyx_v_i;
__pyx_t_301 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_358, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_301, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4777: for dum in range(1):
for (__pyx_t_359 = 0; __pyx_t_359 < 1; __pyx_t_359+=1) {
__pyx_v_dum = __pyx_t_359;
4778:
+4779: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4780: if I[i - 1, j] == Io:
__pyx_t_360 = (__pyx_v_i - 1);
__pyx_t_361 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_360, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_361, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4781: I[i, j] = Io
__pyx_t_362 = __pyx_v_i;
__pyx_t_363 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_362, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_363, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4782: Col[i, j, 2] = red
__pyx_t_364 = __pyx_v_i;
__pyx_t_365 = __pyx_v_j;
__pyx_t_366 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4783: Col[i, j, 1] = green
__pyx_t_367 = __pyx_v_i;
__pyx_t_368 = __pyx_v_j;
__pyx_t_369 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_369, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4784: Col[i, j, 0] = blue
__pyx_t_370 = __pyx_v_i;
__pyx_t_371 = __pyx_v_j;
__pyx_t_372 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_371, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_372, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4785: a[k] = 1
__pyx_t_373 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_373, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4786: break
goto __pyx_L102_break;
+4787: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4788: if I[i, j - 1] == Io:
__pyx_t_374 = __pyx_v_i;
__pyx_t_375 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_375, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4789: I[i, j] = Io
__pyx_t_376 = __pyx_v_i;
__pyx_t_377 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_376, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_377, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4790: Col[i, j, 2] = red
__pyx_t_378 = __pyx_v_i;
__pyx_t_379 = __pyx_v_j;
__pyx_t_380 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4791: Col[i, j, 1] = green
__pyx_t_381 = __pyx_v_i;
__pyx_t_382 = __pyx_v_j;
__pyx_t_383 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_383, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4792: Col[i, j, 0] = blue
__pyx_t_384 = __pyx_v_i;
__pyx_t_385 = __pyx_v_j;
__pyx_t_386 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_385, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_386, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4793: a[k] = 1
__pyx_t_387 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_387, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4794: break
goto __pyx_L102_break;
4795:
+4796: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4797: if I[i, j + 1] == Io:
__pyx_t_388 = __pyx_v_i;
__pyx_t_389 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_389, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4798: I[i, j] = Io
__pyx_t_390 = __pyx_v_i;
__pyx_t_391 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_390, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_391, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4799: Col[i, j, 2] = red
__pyx_t_392 = __pyx_v_i;
__pyx_t_393 = __pyx_v_j;
__pyx_t_394 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4800: Col[i, j, 1] = green
__pyx_t_395 = __pyx_v_i;
__pyx_t_396 = __pyx_v_j;
__pyx_t_397 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_397, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4801: Col[i, j, 0] = blue
__pyx_t_398 = __pyx_v_i;
__pyx_t_399 = __pyx_v_j;
__pyx_t_400 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_398, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_399, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_400, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4802: a[k] = 1
__pyx_t_401 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_401, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4803: break
goto __pyx_L102_break;
4804:
4805:
+4806: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L102_break:;
+4807: if I[i + 1, j] == Io:
__pyx_t_402 = (__pyx_v_i + 1);
__pyx_t_403 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_402, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_403, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4808: I[i, j] = Io
__pyx_t_404 = __pyx_v_i;
__pyx_t_405 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_404, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_405, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4809: Col[i, j, 2] = red
__pyx_t_406 = __pyx_v_i;
__pyx_t_407 = __pyx_v_j;
__pyx_t_408 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_406, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_407, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_408, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4810: Col[i, j, 1] = green
__pyx_t_409 = __pyx_v_i;
__pyx_t_410 = __pyx_v_j;
__pyx_t_411 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_409, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_410, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_411, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4811: Col[i, j, 0] = blue
__pyx_t_412 = __pyx_v_i;
__pyx_t_413 = __pyx_v_j;
__pyx_t_414 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_412, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_413, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_414, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4812: a[k] = 1
__pyx_t_415 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_415, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4813: break
goto __pyx_L102_break;
4814:
4815:
+4816: i, j = xo - deli, yo - delj
__pyx_t_359 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_416 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_359;
__pyx_v_j = __pyx_t_416;
+4817: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L112_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L112_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4818: if I[i, j] == 0:
__pyx_t_416 = __pyx_v_i;
__pyx_t_359 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_416, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_359, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4819: for dum in range(1):
for (__pyx_t_417 = 0; __pyx_t_417 < 1; __pyx_t_417+=1) {
__pyx_v_dum = __pyx_t_417;
4820:
+4821: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4822: if I[i - 1, j] == Io:
__pyx_t_418 = (__pyx_v_i - 1);
__pyx_t_419 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_418, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_419, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4823: I[i, j] = Io
__pyx_t_420 = __pyx_v_i;
__pyx_t_421 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_420, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_421, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4824: Col[i, j, 2] = red
__pyx_t_422 = __pyx_v_i;
__pyx_t_423 = __pyx_v_j;
__pyx_t_424 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_422, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4825: Col[i, j, 1] = green
__pyx_t_425 = __pyx_v_i;
__pyx_t_426 = __pyx_v_j;
__pyx_t_427 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_425, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_426, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_427, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4826: Col[i, j, 0] = blue
__pyx_t_428 = __pyx_v_i;
__pyx_t_429 = __pyx_v_j;
__pyx_t_430 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_428, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_429, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_430, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4827: a[k] = 1
__pyx_t_431 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_431, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4828: break
goto __pyx_L116_break;
+4829: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4830: if I[i, j - 1] == Io:
__pyx_t_432 = __pyx_v_i;
__pyx_t_433 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_432, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_433, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4831: I[i, j] = Io
__pyx_t_434 = __pyx_v_i;
__pyx_t_435 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_434, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_435, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4832: Col[i, j, 2] = red
__pyx_t_436 = __pyx_v_i;
__pyx_t_437 = __pyx_v_j;
__pyx_t_438 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_436, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4833: Col[i, j, 1] = green
__pyx_t_439 = __pyx_v_i;
__pyx_t_440 = __pyx_v_j;
__pyx_t_441 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_439, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_440, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4834: Col[i, j, 0] = blue
__pyx_t_442 = __pyx_v_i;
__pyx_t_443 = __pyx_v_j;
__pyx_t_444 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_443, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_444, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4835: a[k] = 1
__pyx_t_445 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_445, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4836: break
goto __pyx_L116_break;
4837:
+4838: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4839: if I[i, j + 1] == Io:
__pyx_t_446 = __pyx_v_i;
__pyx_t_447 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_446, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_447, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4840: I[i, j] = Io
__pyx_t_448 = __pyx_v_i;
__pyx_t_449 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_448, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_449, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4841: Col[i, j, 2] = red
__pyx_t_450 = __pyx_v_i;
__pyx_t_451 = __pyx_v_j;
__pyx_t_452 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_450, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_451, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_452, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4842: Col[i, j, 1] = green
__pyx_t_453 = __pyx_v_i;
__pyx_t_454 = __pyx_v_j;
__pyx_t_455 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_453, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_454, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4843: Col[i, j, 0] = blue
__pyx_t_456 = __pyx_v_i;
__pyx_t_457 = __pyx_v_j;
__pyx_t_458 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_457, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_458, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4844: a[k] = 1
__pyx_t_459 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_459, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4845: break
goto __pyx_L116_break;
4846:
4847:
+4848: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L116_break:;
+4849: if I[i + 1, j] == Io:
__pyx_t_460 = (__pyx_v_i + 1);
__pyx_t_461 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_460, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_461, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4850: I[i, j] = Io
__pyx_t_462 = __pyx_v_i;
__pyx_t_463 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_462, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_463, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4851: Col[i, j, 2] = red
__pyx_t_464 = __pyx_v_i;
__pyx_t_465 = __pyx_v_j;
__pyx_t_466 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_464, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_465, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_466, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4852: Col[i, j, 1] = green
__pyx_t_467 = __pyx_v_i;
__pyx_t_468 = __pyx_v_j;
__pyx_t_469 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_467, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_468, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_469, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4853: Col[i, j, 0] = blue
__pyx_t_470 = __pyx_v_i;
__pyx_t_471 = __pyx_v_j;
__pyx_t_472 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_470, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_471, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_472, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4854: a[k] = 1
__pyx_t_473 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_473, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4855: break
goto __pyx_L116_break;
4856:
4857:
+4858: for deli in range(-delX , 0):
for (__pyx_t_117 = (-__pyx_v_delX); __pyx_t_117 < 0; __pyx_t_117+=1) {
__pyx_v_deli = __pyx_t_117;
+4859: for delj in range(0, delY + 1):
__pyx_t_118 = (__pyx_v_delY + 1);
for (__pyx_t_119 = 0; __pyx_t_119 < __pyx_t_118; __pyx_t_119+=1) {
__pyx_v_delj = __pyx_t_119;
+4860: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_417 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_417, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
4861:
+4862: i, j = xo + deli, yo + delj
__pyx_t_474 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_475 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_474;
__pyx_v_j = __pyx_t_475;
+4863: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L131_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L131_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4864: if I[i, j] == 0:
__pyx_t_475 = __pyx_v_i;
__pyx_t_474 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_475, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_474, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4865: for dum in range(1):
for (__pyx_t_476 = 0; __pyx_t_476 < 1; __pyx_t_476+=1) {
__pyx_v_dum = __pyx_t_476;
4866:
+4867: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4868: if I[i - 1, j] == Io:
__pyx_t_477 = (__pyx_v_i - 1);
__pyx_t_478 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_477, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_478, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4869: I[i, j] = Io
__pyx_t_479 = __pyx_v_i;
__pyx_t_480 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_479, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_480, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4870: Col[i, j, 2] = red
__pyx_t_481 = __pyx_v_i;
__pyx_t_482 = __pyx_v_j;
__pyx_t_483 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_481, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_482, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_483, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4871: Col[i, j, 1] = green
__pyx_t_484 = __pyx_v_i;
__pyx_t_485 = __pyx_v_j;
__pyx_t_486 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_484, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_485, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_486, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4872: Col[i, j, 0] = blue
__pyx_t_487 = __pyx_v_i;
__pyx_t_488 = __pyx_v_j;
__pyx_t_489 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_487, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_488, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_489, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4873: a[k] = 1
__pyx_t_490 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_490, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4874: break
goto __pyx_L135_break;
+4875: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4876: if I[i, j - 1] == Io:
__pyx_t_491 = __pyx_v_i;
__pyx_t_492 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_491, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_492, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4877: I[i, j] = Io
__pyx_t_493 = __pyx_v_i;
__pyx_t_494 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_493, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_494, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4878: Col[i, j, 2] = red
__pyx_t_495 = __pyx_v_i;
__pyx_t_496 = __pyx_v_j;
__pyx_t_497 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_495, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_496, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_497, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4879: Col[i, j, 1] = green
__pyx_t_498 = __pyx_v_i;
__pyx_t_499 = __pyx_v_j;
__pyx_t_500 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_498, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_499, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_500, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4880: Col[i, j, 0] = blue
__pyx_t_501 = __pyx_v_i;
__pyx_t_502 = __pyx_v_j;
__pyx_t_503 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_501, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_502, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_503, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4881: a[k] = 1
__pyx_t_504 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_504, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4882: break
goto __pyx_L135_break;
4883:
+4884: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4885: if I[i, j + 1] == Io:
__pyx_t_505 = __pyx_v_i;
__pyx_t_506 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_505, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_506, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4886: I[i, j] = Io
__pyx_t_507 = __pyx_v_i;
__pyx_t_508 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_507, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_508, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4887: Col[i, j, 2] = red
__pyx_t_509 = __pyx_v_i;
__pyx_t_510 = __pyx_v_j;
__pyx_t_511 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_509, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_510, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_511, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4888: Col[i, j, 1] = green
__pyx_t_512 = __pyx_v_i;
__pyx_t_513 = __pyx_v_j;
__pyx_t_514 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_512, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_513, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_514, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4889: Col[i, j, 0] = blue
__pyx_t_515 = __pyx_v_i;
__pyx_t_516 = __pyx_v_j;
__pyx_t_517 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_515, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_516, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_517, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4890: a[k] = 1
__pyx_t_518 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_518, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4891: break
goto __pyx_L135_break;
4892:
4893:
+4894: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L135_break:;
+4895: if I[i + 1, j] == Io:
__pyx_t_519 = (__pyx_v_i + 1);
__pyx_t_520 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_519, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_520, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4896: I[i, j] = Io
__pyx_t_521 = __pyx_v_i;
__pyx_t_522 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_521, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_522, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4897: Col[i, j, 2] = red
__pyx_t_523 = __pyx_v_i;
__pyx_t_524 = __pyx_v_j;
__pyx_t_525 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_523, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_524, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_525, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4898: Col[i, j, 1] = green
__pyx_t_526 = __pyx_v_i;
__pyx_t_527 = __pyx_v_j;
__pyx_t_528 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_526, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_527, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_528, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4899: Col[i, j, 0] = blue
__pyx_t_529 = __pyx_v_i;
__pyx_t_530 = __pyx_v_j;
__pyx_t_531 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_529, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_530, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_531, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4900: a[k] = 1
__pyx_t_532 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_532, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4901: break
goto __pyx_L135_break;
4902:
4903:
+4904: i, j = xo - deli, yo - delj
__pyx_t_476 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_533 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_476;
__pyx_v_j = __pyx_t_533;
+4905: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_124 = (0 <= __pyx_v_i);
if (__pyx_t_124) {
__pyx_t_124 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_125 = (__pyx_t_124 != 0);
if (__pyx_t_125) {
} else {
__pyx_t_23 = __pyx_t_125;
goto __pyx_L145_bool_binop_done;
}
__pyx_t_125 = (0 <= __pyx_v_j);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_124 = (__pyx_t_125 != 0);
__pyx_t_23 = __pyx_t_124;
__pyx_L145_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+4906: if I[i, j] == 0:
__pyx_t_533 = __pyx_v_i;
__pyx_t_476 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_533, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_476, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4907: for dum in range(1):
for (__pyx_t_534 = 0; __pyx_t_534 < 1; __pyx_t_534+=1) {
__pyx_v_dum = __pyx_t_534;
4908:
+4909: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4910: if I[i - 1, j] == Io:
__pyx_t_535 = (__pyx_v_i - 1);
__pyx_t_536 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_535, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_536, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4911: I[i, j] = Io
__pyx_t_537 = __pyx_v_i;
__pyx_t_538 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_537, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_538, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4912: Col[i, j, 2] = red
__pyx_t_539 = __pyx_v_i;
__pyx_t_540 = __pyx_v_j;
__pyx_t_541 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_539, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_540, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_541, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4913: Col[i, j, 1] = green
__pyx_t_542 = __pyx_v_i;
__pyx_t_543 = __pyx_v_j;
__pyx_t_544 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_542, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_543, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_544, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4914: Col[i, j, 0] = blue
__pyx_t_545 = __pyx_v_i;
__pyx_t_546 = __pyx_v_j;
__pyx_t_547 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_545, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_546, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_547, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4915: a[k] = 1
__pyx_t_548 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_548, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4916: break
goto __pyx_L149_break;
+4917: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4918: if I[i, j - 1] == Io:
__pyx_t_549 = __pyx_v_i;
__pyx_t_550 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_549, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_550, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4919: I[i, j] = Io
__pyx_t_551 = __pyx_v_i;
__pyx_t_552 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_551, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_552, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4920: Col[i, j, 2] = red
__pyx_t_553 = __pyx_v_i;
__pyx_t_554 = __pyx_v_j;
__pyx_t_555 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_553, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_554, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_555, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4921: Col[i, j, 1] = green
__pyx_t_556 = __pyx_v_i;
__pyx_t_557 = __pyx_v_j;
__pyx_t_558 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_556, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_557, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_558, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4922: Col[i, j, 0] = blue
__pyx_t_559 = __pyx_v_i;
__pyx_t_560 = __pyx_v_j;
__pyx_t_561 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_559, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_560, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_561, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4923: a[k] = 1
__pyx_t_562 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_562, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4924: break
goto __pyx_L149_break;
4925:
+4926: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+4927: if I[i, j + 1] == Io:
__pyx_t_563 = __pyx_v_i;
__pyx_t_564 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_563, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_564, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4928: I[i, j] = Io
__pyx_t_565 = __pyx_v_i;
__pyx_t_566 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_565, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_566, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4929: Col[i, j, 2] = red
__pyx_t_567 = __pyx_v_i;
__pyx_t_568 = __pyx_v_j;
__pyx_t_569 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_567, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_568, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_569, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4930: Col[i, j, 1] = green
__pyx_t_570 = __pyx_v_i;
__pyx_t_571 = __pyx_v_j;
__pyx_t_572 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_570, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_571, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_572, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4931: Col[i, j, 0] = blue
__pyx_t_573 = __pyx_v_i;
__pyx_t_574 = __pyx_v_j;
__pyx_t_575 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_573, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_574, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_575, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4932: a[k] = 1
__pyx_t_576 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_576, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4933: break
goto __pyx_L149_break;
4934:
4935:
+4936: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L149_break:;
+4937: if I[i + 1, j] == Io:
__pyx_t_577 = (__pyx_v_i + 1);
__pyx_t_578 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_577, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_578, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+4938: I[i, j] = Io
__pyx_t_579 = __pyx_v_i;
__pyx_t_580 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_579, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_580, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+4939: Col[i, j, 2] = red
__pyx_t_581 = __pyx_v_i;
__pyx_t_582 = __pyx_v_j;
__pyx_t_583 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_581, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_582, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_583, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+4940: Col[i, j, 1] = green
__pyx_t_584 = __pyx_v_i;
__pyx_t_585 = __pyx_v_j;
__pyx_t_586 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_584, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_585, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_586, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+4941: Col[i, j, 0] = blue
__pyx_t_587 = __pyx_v_i;
__pyx_t_588 = __pyx_v_j;
__pyx_t_589 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_587, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_588, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_589, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+4942: a[k] = 1
__pyx_t_590 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_590, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+4943: break
goto __pyx_L149_break;
4944:
+4945: if a[k] == 0:
__pyx_t_117 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4946: xmin = max(0, xo - delX)
__pyx_t_118 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_591 = 0;
if (((__pyx_t_118 > __pyx_t_591) != 0)) {
__pyx_t_119 = __pyx_t_118;
} else {
__pyx_t_119 = __pyx_t_591;
}
__pyx_v_xmin = __pyx_t_119;
+4947: xmax = min(m - 1, xo + delX)
__pyx_t_119 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_118 = (__pyx_v_m - 1);
if (((__pyx_t_119 < __pyx_t_118) != 0)) {
__pyx_t_534 = __pyx_t_119;
} else {
__pyx_t_534 = __pyx_t_118;
}
__pyx_v_xmax = __pyx_t_534;
+4948: ymin = max(0, yo - delY)
__pyx_t_534 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_591 = 0;
if (((__pyx_t_534 > __pyx_t_591) != 0)) {
__pyx_t_119 = __pyx_t_534;
} else {
__pyx_t_119 = __pyx_t_591;
}
__pyx_v_ymin = __pyx_t_119;
+4949: ymax = min(n - 1, yo + delY)
__pyx_t_119 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_534 = (__pyx_v_n - 1);
if (((__pyx_t_119 < __pyx_t_534) != 0)) {
__pyx_t_118 = __pyx_t_119;
} else {
__pyx_t_118 = __pyx_t_534;
}
__pyx_v_ymax = __pyx_t_118;
+4950: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_118 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
4951:
+4952: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
}
+4953: if asy == 0:
__pyx_t_23 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+4954: break
goto __pyx_L12_break;
4955: else:
+4956: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4956, __pyx_L1_error)
__pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_8, function);
}
}
if (__pyx_t_7) {
__pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4956, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_27 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4956, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_27);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_EqObjC(__pyx_t_27, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4956, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 4956, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
if (__pyx_t_23) {
/* … */
}
+4957: break
goto __pyx_L12_break;
4958: else:
+4959: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4959, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+4960: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_61 = PyTuple_New(2); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_61, 1, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_61); __pyx_t_61 = 0; __pyx_t_61 = PyDict_New(); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_61, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_7, __pyx_t_61); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4960, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4960, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4960, __pyx_L1_error) } __pyx_t_9 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+4961: a = np.ones(p, dtype=np.int8)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ones); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_27, __pyx_n_s_int8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4961, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4961, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4961, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+4962: MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_float64); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_27) < 0) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4962, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4962, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_v_MAJ, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4962, __pyx_L1_error) } __pyx_t_15 = 0; __Pyx_DECREF_SET(__pyx_v_MAJ, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0;
+4963: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_61 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_26 = 1; } } __pyx_t_5 = PyTuple_New(4+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_26, __pyx_t_61); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_61 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_27))) || (PyList_CheckExact(__pyx_t_27))) { PyObject* sequence = __pyx_t_27; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 4963, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; } else { Py_ssize_t index = -1; __pyx_t_61 = PyObject_GetIter(__pyx_t_27); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 4963, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_61)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_24(__pyx_t_61); if (unlikely(!__pyx_t_7)) goto __pyx_L161_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_5 = __pyx_t_24(__pyx_t_61); if (unlikely(!__pyx_t_5)) goto __pyx_L161_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_61), 2) < 0) __PYX_ERR(0, 4963, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; goto __pyx_L162_unpacking_done; __pyx_L161_unpacking_failed:; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 4963, __pyx_L1_error) __pyx_L162_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4963, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4963, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4963, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 4963, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+4964: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
4965:
+4966: toc = time.time()
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4966, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4966, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4966, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_27 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4966, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_27); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 4966, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_toc = __pyx_t_22;
+4967: obj.exetime = toc - tic
__pyx_t_27 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 4967, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_27) < 0) __PYX_ERR(0, 4967, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
+4968: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 4968, __pyx_L1_error)
+4969: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 4969, __pyx_L1_error)
+4970: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 4970, __pyx_L1_error)
+4971: obj.ThetaValues = Theta
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_ThetaValues, ((PyObject *)__pyx_v_Theta)) < 0) __PYX_ERR(0, 4971, __pyx_L1_error)
+4972: obj.adotValues = adotVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_adotValues, ((PyObject *)__pyx_v_adotVal)) < 0) __PYX_ERR(0, 4972, __pyx_L1_error)
+4973: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 4973, __pyx_L1_error)
+4974: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
4975:
4976:
+4977: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_41Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_41Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_41Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_41Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_40Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_40Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_seq;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_imin;
PY_LONG_LONG __pyx_v_imax;
PY_LONG_LONG __pyx_v_jmin;
PY_LONG_LONG __pyx_v_jmax;
PY_LONG_LONG __pyx_v_io;
PY_LONG_LONG __pyx_v_jo;
PY_LONG_LONG __pyx_v_go;
PY_LONG_LONG __pyx_v_found;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_l1;
PY_LONG_LONG __pyx_v_l2;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_adotValmax;
float __pyx_v_tmp;
float __pyx_v_MIN;
float __pyx_v_dr;
float __pyx_v_R;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_II = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_RVal = 0;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_II;
__Pyx_Buffer __pyx_pybuffer_II;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_RVal;
__Pyx_Buffer __pyx_pybuffer_RVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_II.pybuffer.buf = NULL;
__pyx_pybuffer_II.refcount = 0;
__pyx_pybuffernd_II.data = NULL;
__pyx_pybuffernd_II.rcbuffer = &__pyx_pybuffer_II;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_RVal.pybuffer.buf = NULL;
__pyx_pybuffer_RVal.refcount = 0;
__pyx_pybuffernd_RVal.data = NULL;
__pyx_pybuffernd_RVal.rcbuffer = &__pyx_pybuffer_RVal;
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_27);
__Pyx_XDECREF(__pyx_t_61);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_RVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_RVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_II);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_RVal);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__51 = PyTuple_Pack(70, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Adotfunc, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_MN, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_imin, __pyx_n_s_imax, __pyx_n_s_jmin, __pyx_n_s_jmax, __pyx_n_s_io, __pyx_n_s_jo, __pyx_n_s_go, __pyx_n_s_found, __pyx_n_s_dum, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_count, __pyx_n_s_l1, __pyx_n_s_l2, __pyx_n_s_countim, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_adotValmax, __pyx_n_s_tmp, __pyx_n_s_MIN, __pyx_n_s_dr, __pyx_n_s_R, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_II, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_adotVal, __pyx_n_s_RVal, __pyx_n_s_MAJ, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(0, 4977, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__51);
__Pyx_GIVEREF(__pyx_tuple__51);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_41Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_without_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4977, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_11, __pyx_t_2) < 0) __PYX_ERR(0, 4977, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__52 = (PyObject*)__Pyx_PyCode_New(1, 0, 70, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__51, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_11, 4977, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__52)) __PYX_ERR(0, 4977, __pyx_L1_error)
4978: # Grabbing data from the input object
+4979: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4979, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+4980: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4980, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4980, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+4981: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4981, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4981, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+4982: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4982, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4982, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+4983: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4983, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4983, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+4984: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4984, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4984, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+4985: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4985, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4985, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+4986: cdef long long seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4986, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 4986, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_2;
+4987: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4987, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4987, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+4988: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4988, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 4988, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+4989: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4989, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+4990: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4990, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+4991: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4991, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
+4992: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4992, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
4993:
4994:
4995: # Declaring other variables
4996: cdef double tic, toc
4997: cdef long long deli, delj, MN, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, imin, imax, jmin, jmax, io, jo, go, found, dum, i, j, k, xo, yo, count, l1, l2, countim, MAJceil, MINceil, Iter
4998: cdef float adotValmax, tmp, MIN, dr, R, red, green, blue
+4999: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 4999, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 4999, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 4999, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+5000: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5000, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5000, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5000, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+5001: cdef np.ndarray[np.int_t, ndim = 2] II = np.zeros((m, n), dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5001, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5001, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_II = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_II.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5001, __pyx_L1_error) } else {__pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_II = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+5002: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ones); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5002, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5002, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5002, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+5003: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5003, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5003, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5003, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+5004: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5004, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5004, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5004, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+5005: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(p, dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5005, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5005, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5005, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+5006: cdef np.ndarray[np.float64_t, ndim = 1] RVal = np.zeros(p, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5006, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5006, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_RVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_RVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_RVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5006, __pyx_L1_error) } else {__pyx_pybuffernd_RVal.diminfo[0].strides = __pyx_pybuffernd_RVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_RVal.diminfo[0].shape = __pyx_pybuffernd_RVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_RVal = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+5007: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5007, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5007, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5007, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+5008: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5008, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5008, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5008, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+5009: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5009, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5009, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5009, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_18 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+5010: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5010, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5010, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5010, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5010, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5010, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+5011: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5011, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5011, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5011, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+5012: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5012, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5012, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5012, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5012, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 5012, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_tic = __pyx_t_22;
5013:
+5014: if pdelNxy == []:
__pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5014, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5014, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 5014, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_23) { /* … */ goto __pyx_L3; }
+5015: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 5015, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_24(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_24(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_6), 2) < 0) __PYX_ERR(0, 5015, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 5015, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5015, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5015, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5015, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5015, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
5016: else:
+5017: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_27 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_27, 0+__pyx_t_26, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 1+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_27, 2+__pyx_t_26, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_27, 4+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_27, 5+__pyx_t_26, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_27, 6+__pyx_t_26, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_27, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 5017, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_27 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_27 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_27);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_27 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5017, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_27 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_27)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_27);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_1), 2) < 0) __PYX_ERR(0, 5017, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 5017, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5017, __pyx_L1_error)
if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5017, __pyx_L1_error)
__pyx_t_12 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5017, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_13 = ((PyArrayObject *)__pyx_t_27);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5017, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_27));
__pyx_t_27 = 0;
}
__pyx_L3:;
5018:
+5019: if labelsorted == 1:
__pyx_t_23 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_23) {
/* … */
}
+5020: X, Y = labelsort(n, X, Y)
__pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); __pyx_t_26 = 1; } } __pyx_t_6 = PyTuple_New(3+__pyx_t_26); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_26, __pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_26, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_26, ((PyObject *)__pyx_v_Y)); __pyx_t_4 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 5020, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_27 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_27 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_27 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_4)->tp_iternext; index = 0; __pyx_t_27 = __pyx_t_24(__pyx_t_4); if (unlikely(!__pyx_t_27)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_27); index = 1; __pyx_t_6 = __pyx_t_24(__pyx_t_4); if (unlikely(!__pyx_t_6)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_4), 2) < 0) __PYX_ERR(0, 5020, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 5020, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5020, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5020, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5020, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5020, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
5021:
+5022: Iter = 1
__pyx_v_Iter = 1;
+5023: while True:
while (1) {
5024:
+5025: if seq == 1 or seq == 3 or seq == 4:
switch (__pyx_v_seq) {
case 1:
case 3:
case 4:
/* … */
break;
default:
+5026: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5027: I[X[k], Y[k]] = k + 1
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = __pyx_v_k;
__pyx_t_31 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_32 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_32, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5028: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_33 = __pyx_v_k;
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = __pyx_v_k;
__pyx_t_37 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_38 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_39 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+5029: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_40 = __pyx_v_k;
__pyx_t_41 = 1;
__pyx_t_42 = __pyx_v_k;
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_45 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_col.diminfo[1].strides));
+5030: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_k;
__pyx_t_50 = __pyx_v_k;
__pyx_t_51 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_52 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_53 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+5031: RVal[k] = Rfunc(X[k], Y[k], k + 1, 1, 0)
__pyx_t_54 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5031, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_55 = __pyx_v_k;
__pyx_t_27 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5031, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5031, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_1 = __pyx_v_Rfunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_25 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5031, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_26, __pyx_t_4);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_26, __pyx_int_0);
__pyx_t_6 = 0;
__pyx_t_27 = 0;
__pyx_t_4 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5031, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5031, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_57 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_RVal.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_RVal.diminfo[0].strides) = __pyx_t_56;
+5032: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, 0, RVal[k])
__pyx_t_58 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_59 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_60 = __pyx_v_k;
__pyx_t_27 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_RVal.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_RVal.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_6 = __pyx_v_Adotfunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_61 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_61, 0+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_61, 1+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_61, 2+__pyx_t_26, __pyx_t_4);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_61, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_61, 4+__pyx_t_26, __pyx_t_27);
__pyx_t_1 = 0;
__pyx_t_25 = 0;
__pyx_t_4 = 0;
__pyx_t_27 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_61, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5032, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5032, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_62 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
}
5033: else:
+5034: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5035: I[X[k], Y[k]] = k + 1
__pyx_t_63 = __pyx_v_k;
__pyx_t_64 = __pyx_v_k;
__pyx_t_65 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_66 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5036: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_67 = __pyx_v_k;
__pyx_t_68 = 0;
__pyx_t_69 = __pyx_v_k;
__pyx_t_70 = __pyx_v_k;
__pyx_t_71 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_72 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_73 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_col.diminfo[1].strides));
+5037: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_74 = __pyx_v_k;
__pyx_t_75 = 1;
__pyx_t_76 = __pyx_v_k;
__pyx_t_77 = __pyx_v_k;
__pyx_t_78 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_79 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_80 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_col.diminfo[1].strides));
+5038: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_81 = __pyx_v_k;
__pyx_t_82 = 2;
__pyx_t_83 = __pyx_v_k;
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_86 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_87 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_87, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_col.diminfo[1].strides));
+5039: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, 0, 1)
__pyx_t_88 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_89 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_4 = __pyx_v_Adotfunc; __pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_1 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_26, __pyx_t_27);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_26, __pyx_int_0);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_61 = 0;
__pyx_t_27 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5039, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5039, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_90 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
+5040: RVal[k] = Rfunc(X[k], Y[k], k + 1, adotVal[k], 0)
__pyx_t_91 = __pyx_v_k;
__pyx_t_4 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5040, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_92 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5040, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5040, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_93 = __pyx_v_k;
__pyx_t_61 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5040, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_6 = __pyx_v_Rfunc; __pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_5 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5040, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_26, __pyx_t_61);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_26, __pyx_int_0);
__pyx_t_4 = 0;
__pyx_t_1 = 0;
__pyx_t_27 = 0;
__pyx_t_61 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5040, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5040, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_94 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_RVal.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_RVal.diminfo[0].strides) = __pyx_t_56;
}
break;
}
5041:
5042:
5043:
5044:
+5045: adotValmax = max(adotVal)
__pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5045, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(((PyObject *)__pyx_v_adotVal)); __Pyx_GIVEREF(((PyObject *)__pyx_v_adotVal)); PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_v_adotVal)); __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_max, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5045, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_95 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_95 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 5045, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_adotValmax = __pyx_t_95;
5046:
+5047: showriteframe(sa, sf, fd, 0, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, 0, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
5048:
+5049: countim = 1
__pyx_v_countim = 1;
+5050: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5050, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5050, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
}
}
if (!__pyx_t_7) {
__pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5050, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
__pyx_t_61 = PyTuple_New(1+1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5050, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_7); __pyx_t_7 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_61, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_61, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5050, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
}
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = PyObject_RichCompare(__pyx_t_6, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5050, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 5050, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (!__pyx_t_23) break;
+5051: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+5052: for i in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_i = __pyx_t_28;
+5053: if a[i] == 1:
__pyx_t_96 = __pyx_v_i;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+5054: tmp = adotVal[i]
__pyx_t_97 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+5055: if tmp > adotValmax:
__pyx_t_23 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_23) {
/* … */
}
+5056: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
5057:
+5058: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5059: if a[k] == 1:
__pyx_t_98 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+5060: a[k] = 0
__pyx_t_99 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+5061: xo = X[k]
__pyx_t_100 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_X.diminfo[0].strides));
+5062: yo = Y[k]
__pyx_t_101 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_Y.diminfo[0].strides));
+5063: Io = I[xo, yo]
__pyx_t_102 = __pyx_v_xo;
__pyx_t_103 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_103, __pyx_pybuffernd_I.diminfo[1].strides));
5064:
+5065: dr = adotVal[k] / adotValmax
__pyx_t_104 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+5066: MAJ[k] = MAJ[k] + dr
__pyx_t_105 = __pyx_v_k;
__pyx_t_106 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+5067: R = RVal[k]
__pyx_t_107 = __pyx_v_k;
__pyx_v_R = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_RVal.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_RVal.diminfo[0].strides));
+5068: MIN = MAJ[k] / R
__pyx_t_108 = __pyx_v_k;
__pyx_v_MIN = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_MAJ.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_R));
+5069: MAJceil = math.ceil(MAJ[k])
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_109 = __pyx_v_k; __pyx_t_6 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_MAJ.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_61))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_61); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_61, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_61, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5069, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_27 = PyTuple_New(1+1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_27, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_27, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; } __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_110 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_110 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5069, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_MAJceil = __pyx_t_110;
+5070: MINceil = math.ceil(MIN)
__pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5070, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_ceil); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5070, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_61 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5070, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (!__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_61); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5070, __pyx_L1_error) __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5070, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_61); __pyx_t_61 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5070, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_110 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_110 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5070, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_MINceil = __pyx_t_110;
+5071: red = col[k, 0]
__pyx_t_110 = __pyx_v_k;
__pyx_t_111 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_col.diminfo[1].strides));
+5072: green = col[k, 1]
__pyx_t_112 = __pyx_v_k;
__pyx_t_113 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_col.diminfo[1].strides));
+5073: blue = col[k, 2]
__pyx_t_114 = __pyx_v_k;
__pyx_t_115 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_115, __pyx_pybuffernd_col.diminfo[1].strides));
5074:
+5075: imin, imax, jmin, jmax = xo, xo, yo, yo
__pyx_t_116 = __pyx_v_xo;
__pyx_t_117 = __pyx_v_xo;
__pyx_t_118 = __pyx_v_yo;
__pyx_t_119 = __pyx_v_yo;
__pyx_v_imin = __pyx_t_116;
__pyx_v_imax = __pyx_t_117;
__pyx_v_jmin = __pyx_t_118;
__pyx_v_jmax = __pyx_t_119;
+5076: count = 0
__pyx_v_count = 0;
+5077: for deli in range(0, MAJceil + 1):
__pyx_t_119 = (__pyx_v_MAJceil + 1);
for (__pyx_t_118 = 0; __pyx_t_118 < __pyx_t_119; __pyx_t_118+=1) {
__pyx_v_deli = __pyx_t_118;
+5078: for delj in range(0, MINceil + 1):
__pyx_t_117 = (__pyx_v_MINceil + 1);
for (__pyx_t_116 = 0; __pyx_t_116 < __pyx_t_117; __pyx_t_116+=1) {
__pyx_v_delj = __pyx_t_116;
+5079: if (deli / MAJ[k]) ** 2 + (delj / MIN) ** 2 <= 1:
__pyx_t_120 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)__pyx_v_deli) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
+5080: for l1 in range(-1, 2, 2):
for (__pyx_t_121 = -1L; __pyx_t_121 < 2; __pyx_t_121+=2) {
__pyx_v_l1 = __pyx_t_121;
+5081: for l2 in range(-1, 2, 2):
for (__pyx_t_122 = -1L; __pyx_t_122 < 2; __pyx_t_122+=2) {
__pyx_v_l2 = __pyx_t_122;
+5082: i, j = xo + l1 * deli, yo + l2 * delj
__pyx_t_123 = (__pyx_v_xo + (__pyx_v_l1 * __pyx_v_deli));
__pyx_t_124 = (__pyx_v_yo + (__pyx_v_l2 * __pyx_v_delj));
__pyx_v_i = __pyx_t_123;
__pyx_v_j = __pyx_t_124;
+5083: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_125 = (0 <= __pyx_v_i);
if (__pyx_t_125) {
__pyx_t_125 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_126 = (__pyx_t_125 != 0);
if (__pyx_t_126) {
} else {
__pyx_t_23 = __pyx_t_126;
goto __pyx_L36_bool_binop_done;
}
__pyx_t_126 = (0 <= __pyx_v_j);
if (__pyx_t_126) {
__pyx_t_126 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_125 = (__pyx_t_126 != 0);
__pyx_t_23 = __pyx_t_125;
__pyx_L36_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
}
}
+5084: if I[i, j] == 0:
__pyx_t_124 = __pyx_v_i;
__pyx_t_123 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5085: II[i, j] = Io
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_II.diminfo[1].strides) = __pyx_v_Io;
+5086: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+5087: if i > imax:
__pyx_t_23 = ((__pyx_v_i > __pyx_v_imax) != 0);
if (__pyx_t_23) {
/* … */
}
+5088: imax = i
__pyx_v_imax = __pyx_v_i;
+5089: if i < imin:
__pyx_t_23 = ((__pyx_v_i < __pyx_v_imin) != 0);
if (__pyx_t_23) {
/* … */
}
+5090: imin = i
__pyx_v_imin = __pyx_v_i;
+5091: if j > jmax:
__pyx_t_23 = ((__pyx_v_j > __pyx_v_jmax) != 0);
if (__pyx_t_23) {
/* … */
}
+5092: jmax = j
__pyx_v_jmax = __pyx_v_j;
+5093: if j < jmin:
__pyx_t_23 = ((__pyx_v_j < __pyx_v_jmin) != 0);
if (__pyx_t_23) {
/* … */
}
+5094: jmin = j
__pyx_v_jmin = __pyx_v_j;
5095:
+5096: if count > 0:
__pyx_t_23 = ((__pyx_v_count > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5097: i = imin
__pyx_v_i = __pyx_v_imin;
+5098: go = 1
__pyx_v_go = 1;
+5099: found = 0
__pyx_v_found = 0;
+5100: while go is True:
while (1) {
__pyx_t_23 = ((__pyx_v_go == 1) != 0);
if (!__pyx_t_23) break;
+5101: for j in range(jmin, jmax + 1, 1):
__pyx_t_119 = (__pyx_v_jmax + 1);
for (__pyx_t_118 = __pyx_v_jmin; __pyx_t_118 < __pyx_t_119; __pyx_t_118+=1) {
__pyx_v_j = __pyx_t_118;
+5102: if II[i, j] == Io:
__pyx_t_117 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L47_break:;
+5103: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5104: if I[i - 1, j] == Io:
__pyx_t_121 = (__pyx_v_i - 1);
__pyx_t_122 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5105: io, jo = i, j
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = __pyx_v_j;
__pyx_v_io = __pyx_t_129;
__pyx_v_jo = __pyx_t_130;
+5106: go = 0
__pyx_v_go = 0;
+5107: found = 1
__pyx_v_found = 1;
+5108: break
goto __pyx_L47_break;
+5109: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5110: if I[i, j - 1] == Io:
__pyx_t_130 = __pyx_v_i;
__pyx_t_129 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_129, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5111: io, jo = i, j
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = __pyx_v_j;
__pyx_v_io = __pyx_t_131;
__pyx_v_jo = __pyx_t_132;
+5112: go = 0
__pyx_v_go = 0;
+5113: found = 1
__pyx_v_found = 1;
+5114: break
goto __pyx_L47_break;
5115:
+5116: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5117: if I[i, j + 1] == Io:
__pyx_t_132 = __pyx_v_i;
__pyx_t_131 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5118: io, jo = i, j
__pyx_t_133 = __pyx_v_i;
__pyx_t_134 = __pyx_v_j;
__pyx_v_io = __pyx_t_133;
__pyx_v_jo = __pyx_t_134;
+5119: go = 0
__pyx_v_go = 0;
+5120: found = 1
__pyx_v_found = 1;
+5121: break
goto __pyx_L47_break;
5122:
5123:
+5124: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5125: if I[i + 1, j] == Io:
__pyx_t_134 = (__pyx_v_i + 1);
__pyx_t_133 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_133, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5126: io, jo = i, j
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
__pyx_v_io = __pyx_t_135;
__pyx_v_jo = __pyx_t_136;
+5127: go = 0
__pyx_v_go = 0;
+5128: found = 1
__pyx_v_found = 1;
+5129: break
goto __pyx_L47_break;
+5130: i = i + 1
__pyx_v_i = (__pyx_v_i + 1);
+5131: if i == imax + 1:
__pyx_t_23 = ((__pyx_v_i == (__pyx_v_imax + 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
+5132: go = 0
__pyx_v_go = 0;
5133:
+5134: if found == 1:
__pyx_t_23 = ((__pyx_v_found == 1) != 0);
if (__pyx_t_23) {
/* … */
}
5135:
5136: # OUTWARD
+5137: for i in range(io, imax + 1):
__pyx_t_119 = (__pyx_v_imax + 1);
for (__pyx_t_118 = __pyx_v_io; __pyx_t_118 < __pyx_t_119; __pyx_t_118+=1) {
__pyx_v_i = __pyx_t_118;
+5138: for j in range(jo, jmax + 1):
__pyx_t_136 = (__pyx_v_jmax + 1);
for (__pyx_t_135 = __pyx_v_jo; __pyx_t_135 < __pyx_t_136; __pyx_t_135+=1) {
__pyx_v_j = __pyx_t_135;
+5139: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5140: if II[i, j] == Io:
__pyx_t_138 = __pyx_v_i;
__pyx_t_139 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_139, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L64_break:;
}
+5141: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5142: if I[i - 1, j] == Io:
__pyx_t_140 = (__pyx_v_i - 1);
__pyx_t_141 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5143: I[i, j] = Io
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5144: Col[i, j, 2] = red
__pyx_t_144 = __pyx_v_i;
__pyx_t_145 = __pyx_v_j;
__pyx_t_146 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5145: Col[i, j, 1] = green
__pyx_t_147 = __pyx_v_i;
__pyx_t_148 = __pyx_v_j;
__pyx_t_149 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_149, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5146: Col[i, j, 0] = blue
__pyx_t_150 = __pyx_v_i;
__pyx_t_151 = __pyx_v_j;
__pyx_t_152 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5147: a[k] = 1
__pyx_t_153 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5148: break
goto __pyx_L64_break;
+5149: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5150: if I[i, j - 1] == Io:
__pyx_t_154 = __pyx_v_i;
__pyx_t_155 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5151: I[i, j] = Io
__pyx_t_156 = __pyx_v_i;
__pyx_t_157 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_157, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5152: Col[i, j, 2] = red
__pyx_t_158 = __pyx_v_i;
__pyx_t_159 = __pyx_v_j;
__pyx_t_160 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5153: Col[i, j, 1] = green
__pyx_t_161 = __pyx_v_i;
__pyx_t_162 = __pyx_v_j;
__pyx_t_163 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5154: Col[i, j, 0] = blue
__pyx_t_164 = __pyx_v_i;
__pyx_t_165 = __pyx_v_j;
__pyx_t_166 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5155: a[k] = 1
__pyx_t_167 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_167, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5156: break
goto __pyx_L64_break;
5157:
+5158: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5159: if I[i, j + 1] == Io:
__pyx_t_168 = __pyx_v_i;
__pyx_t_169 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5160: I[i, j] = Io
__pyx_t_170 = __pyx_v_i;
__pyx_t_171 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_171, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5161: Col[i, j, 2] = red
__pyx_t_172 = __pyx_v_i;
__pyx_t_173 = __pyx_v_j;
__pyx_t_174 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5162: Col[i, j, 1] = green
__pyx_t_175 = __pyx_v_i;
__pyx_t_176 = __pyx_v_j;
__pyx_t_177 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_177, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5163: Col[i, j, 0] = blue
__pyx_t_178 = __pyx_v_i;
__pyx_t_179 = __pyx_v_j;
__pyx_t_180 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_178, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_179, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_180, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5164: a[k] = 1
__pyx_t_181 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5165: break
goto __pyx_L64_break;
5166:
5167:
+5168: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5169: if I[i + 1, j] == Io:
__pyx_t_182 = (__pyx_v_i + 1);
__pyx_t_183 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5170: I[i, j] = Io
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5171: Col[i, j, 2] = red
__pyx_t_186 = __pyx_v_i;
__pyx_t_187 = __pyx_v_j;
__pyx_t_188 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5172: Col[i, j, 1] = green
__pyx_t_189 = __pyx_v_i;
__pyx_t_190 = __pyx_v_j;
__pyx_t_191 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_191, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5173: Col[i, j, 0] = blue
__pyx_t_192 = __pyx_v_i;
__pyx_t_193 = __pyx_v_j;
__pyx_t_194 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_192, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_193, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_194, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5174: a[k] = 1
__pyx_t_195 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_195, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5175: break
goto __pyx_L64_break;
5176:
+5177: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_136 = (__pyx_v_jmin - 1);
for (__pyx_t_135 = (__pyx_v_jo - 1); __pyx_t_135 > __pyx_t_136; __pyx_t_135-=1) {
__pyx_v_j = __pyx_t_135;
+5178: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5179: if II[i, j] == Io:
__pyx_t_196 = __pyx_v_i;
__pyx_t_197 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L77_break:;
}
}
+5180: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5181: if I[i - 1, j] == Io:
__pyx_t_198 = (__pyx_v_i - 1);
__pyx_t_199 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5182: I[i, j] = Io
__pyx_t_200 = __pyx_v_i;
__pyx_t_201 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_200, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_201, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5183: Col[i, j, 2] = red
__pyx_t_202 = __pyx_v_i;
__pyx_t_203 = __pyx_v_j;
__pyx_t_204 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5184: Col[i, j, 1] = green
__pyx_t_205 = __pyx_v_i;
__pyx_t_206 = __pyx_v_j;
__pyx_t_207 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_207, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5185: Col[i, j, 0] = blue
__pyx_t_208 = __pyx_v_i;
__pyx_t_209 = __pyx_v_j;
__pyx_t_210 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_209, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_210, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5186: a[k] = 1
__pyx_t_211 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_211, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5187: break
goto __pyx_L77_break;
+5188: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5189: if I[i, j - 1] == Io:
__pyx_t_212 = __pyx_v_i;
__pyx_t_213 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_213, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5190: I[i, j] = Io
__pyx_t_214 = __pyx_v_i;
__pyx_t_215 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_214, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_215, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5191: Col[i, j, 2] = red
__pyx_t_216 = __pyx_v_i;
__pyx_t_217 = __pyx_v_j;
__pyx_t_218 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_216, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5192: Col[i, j, 1] = green
__pyx_t_219 = __pyx_v_i;
__pyx_t_220 = __pyx_v_j;
__pyx_t_221 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_219, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_220, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_221, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5193: Col[i, j, 0] = blue
__pyx_t_222 = __pyx_v_i;
__pyx_t_223 = __pyx_v_j;
__pyx_t_224 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_222, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_223, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_224, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5194: a[k] = 1
__pyx_t_225 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_225, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5195: break
goto __pyx_L77_break;
5196:
+5197: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5198: if I[i, j + 1] == Io:
__pyx_t_226 = __pyx_v_i;
__pyx_t_227 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_227, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5199: I[i, j] = Io
__pyx_t_228 = __pyx_v_i;
__pyx_t_229 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_228, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_229, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5200: Col[i, j, 2] = red
__pyx_t_230 = __pyx_v_i;
__pyx_t_231 = __pyx_v_j;
__pyx_t_232 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5201: Col[i, j, 1] = green
__pyx_t_233 = __pyx_v_i;
__pyx_t_234 = __pyx_v_j;
__pyx_t_235 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_235, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5202: Col[i, j, 0] = blue
__pyx_t_236 = __pyx_v_i;
__pyx_t_237 = __pyx_v_j;
__pyx_t_238 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_236, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_238, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5203: a[k] = 1
__pyx_t_239 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_239, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5204: break
goto __pyx_L77_break;
5205:
5206:
+5207: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5208: if I[i + 1, j] == Io:
__pyx_t_240 = (__pyx_v_i + 1);
__pyx_t_241 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5209: I[i, j] = Io
__pyx_t_242 = __pyx_v_i;
__pyx_t_243 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_243, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5210: Col[i, j, 2] = red
__pyx_t_244 = __pyx_v_i;
__pyx_t_245 = __pyx_v_j;
__pyx_t_246 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_246, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5211: Col[i, j, 1] = green
__pyx_t_247 = __pyx_v_i;
__pyx_t_248 = __pyx_v_j;
__pyx_t_249 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_248, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_249, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5212: Col[i, j, 0] = blue
__pyx_t_250 = __pyx_v_i;
__pyx_t_251 = __pyx_v_j;
__pyx_t_252 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_250, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_251, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_252, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5213: a[k] = 1
__pyx_t_253 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_253, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5214: break
goto __pyx_L77_break;
5215:
5216:
5217:
+5218: for i in range(io - 1, imin - 1, -1):
__pyx_t_119 = (__pyx_v_imin - 1);
for (__pyx_t_118 = (__pyx_v_io - 1); __pyx_t_118 > __pyx_t_119; __pyx_t_118-=1) {
__pyx_v_i = __pyx_t_118;
+5219: for j in range(jo, jmax + 1):
__pyx_t_136 = (__pyx_v_jmax + 1);
for (__pyx_t_135 = __pyx_v_jo; __pyx_t_135 < __pyx_t_136; __pyx_t_135+=1) {
__pyx_v_j = __pyx_t_135;
+5220: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5221: if II[i, j] == Io:
__pyx_t_254 = __pyx_v_i;
__pyx_t_255 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L92_break:;
}
+5222: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5223: if I[i - 1, j] == Io:
__pyx_t_256 = (__pyx_v_i - 1);
__pyx_t_257 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_257, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5224: I[i, j] = Io
__pyx_t_258 = __pyx_v_i;
__pyx_t_259 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_258, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_259, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5225: Col[i, j, 2] = red
__pyx_t_260 = __pyx_v_i;
__pyx_t_261 = __pyx_v_j;
__pyx_t_262 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_260, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5226: Col[i, j, 1] = green
__pyx_t_263 = __pyx_v_i;
__pyx_t_264 = __pyx_v_j;
__pyx_t_265 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_265, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5227: Col[i, j, 0] = blue
__pyx_t_266 = __pyx_v_i;
__pyx_t_267 = __pyx_v_j;
__pyx_t_268 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5228: a[k] = 1
__pyx_t_269 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_269, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5229: break
goto __pyx_L92_break;
+5230: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5231: if I[i, j - 1] == Io:
__pyx_t_270 = __pyx_v_i;
__pyx_t_271 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_271, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5232: I[i, j] = Io
__pyx_t_272 = __pyx_v_i;
__pyx_t_273 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_272, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_273, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5233: Col[i, j, 2] = red
__pyx_t_274 = __pyx_v_i;
__pyx_t_275 = __pyx_v_j;
__pyx_t_276 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_274, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5234: Col[i, j, 1] = green
__pyx_t_277 = __pyx_v_i;
__pyx_t_278 = __pyx_v_j;
__pyx_t_279 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_278, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_279, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5235: Col[i, j, 0] = blue
__pyx_t_280 = __pyx_v_i;
__pyx_t_281 = __pyx_v_j;
__pyx_t_282 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_280, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_281, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_282, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5236: a[k] = 1
__pyx_t_283 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_283, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5237: break
goto __pyx_L92_break;
5238:
+5239: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5240: if I[i, j + 1] == Io:
__pyx_t_284 = __pyx_v_i;
__pyx_t_285 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5241: I[i, j] = Io
__pyx_t_286 = __pyx_v_i;
__pyx_t_287 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_286, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_287, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5242: Col[i, j, 2] = red
__pyx_t_288 = __pyx_v_i;
__pyx_t_289 = __pyx_v_j;
__pyx_t_290 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5243: Col[i, j, 1] = green
__pyx_t_291 = __pyx_v_i;
__pyx_t_292 = __pyx_v_j;
__pyx_t_293 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5244: Col[i, j, 0] = blue
__pyx_t_294 = __pyx_v_i;
__pyx_t_295 = __pyx_v_j;
__pyx_t_296 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5245: a[k] = 1
__pyx_t_297 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_297, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5246: break
goto __pyx_L92_break;
5247:
5248:
+5249: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5250: if I[i + 1, j] == Io:
__pyx_t_298 = (__pyx_v_i + 1);
__pyx_t_299 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5251: I[i, j] = Io
__pyx_t_300 = __pyx_v_i;
__pyx_t_301 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_300, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_301, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5252: Col[i, j, 2] = red
__pyx_t_302 = __pyx_v_i;
__pyx_t_303 = __pyx_v_j;
__pyx_t_304 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_304, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5253: Col[i, j, 1] = green
__pyx_t_305 = __pyx_v_i;
__pyx_t_306 = __pyx_v_j;
__pyx_t_307 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5254: Col[i, j, 0] = blue
__pyx_t_308 = __pyx_v_i;
__pyx_t_309 = __pyx_v_j;
__pyx_t_310 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5255: a[k] = 1
__pyx_t_311 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_311, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5256: break
goto __pyx_L92_break;
5257:
+5258: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_136 = (__pyx_v_jmin - 1);
for (__pyx_t_135 = (__pyx_v_jo - 1); __pyx_t_135 > __pyx_t_136; __pyx_t_135-=1) {
__pyx_v_j = __pyx_t_135;
+5259: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5260: if II[i, j] == Io:
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L105_break:;
}
}
+5261: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5262: if I[i - 1, j] == Io:
__pyx_t_314 = (__pyx_v_i - 1);
__pyx_t_315 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_314, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_315, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5263: I[i, j] = Io
__pyx_t_316 = __pyx_v_i;
__pyx_t_317 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_317, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5264: Col[i, j, 2] = red
__pyx_t_318 = __pyx_v_i;
__pyx_t_319 = __pyx_v_j;
__pyx_t_320 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_318, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5265: Col[i, j, 1] = green
__pyx_t_321 = __pyx_v_i;
__pyx_t_322 = __pyx_v_j;
__pyx_t_323 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5266: Col[i, j, 0] = blue
__pyx_t_324 = __pyx_v_i;
__pyx_t_325 = __pyx_v_j;
__pyx_t_326 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5267: a[k] = 1
__pyx_t_327 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_327, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5268: break
goto __pyx_L105_break;
+5269: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5270: if I[i, j - 1] == Io:
__pyx_t_328 = __pyx_v_i;
__pyx_t_329 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_328, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_329, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5271: I[i, j] = Io
__pyx_t_330 = __pyx_v_i;
__pyx_t_331 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_330, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_331, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5272: Col[i, j, 2] = red
__pyx_t_332 = __pyx_v_i;
__pyx_t_333 = __pyx_v_j;
__pyx_t_334 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_332, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_333, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5273: Col[i, j, 1] = green
__pyx_t_335 = __pyx_v_i;
__pyx_t_336 = __pyx_v_j;
__pyx_t_337 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5274: Col[i, j, 0] = blue
__pyx_t_338 = __pyx_v_i;
__pyx_t_339 = __pyx_v_j;
__pyx_t_340 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5275: a[k] = 1
__pyx_t_341 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_341, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5276: break
goto __pyx_L105_break;
5277:
+5278: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5279: if I[i, j + 1] == Io:
__pyx_t_342 = __pyx_v_i;
__pyx_t_343 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_343, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5280: I[i, j] = Io
__pyx_t_344 = __pyx_v_i;
__pyx_t_345 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_344, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_345, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5281: Col[i, j, 2] = red
__pyx_t_346 = __pyx_v_i;
__pyx_t_347 = __pyx_v_j;
__pyx_t_348 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_347, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_348, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5282: Col[i, j, 1] = green
__pyx_t_349 = __pyx_v_i;
__pyx_t_350 = __pyx_v_j;
__pyx_t_351 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5283: Col[i, j, 0] = blue
__pyx_t_352 = __pyx_v_i;
__pyx_t_353 = __pyx_v_j;
__pyx_t_354 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5284: a[k] = 1
__pyx_t_355 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_355, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5285: break
goto __pyx_L105_break;
5286:
5287:
+5288: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5289: if I[i + 1, j] == Io:
__pyx_t_356 = (__pyx_v_i + 1);
__pyx_t_357 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_356, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_357, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5290: I[i, j] = Io
__pyx_t_358 = __pyx_v_i;
__pyx_t_359 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_358, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_359, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5291: Col[i, j, 2] = red
__pyx_t_360 = __pyx_v_i;
__pyx_t_361 = __pyx_v_j;
__pyx_t_362 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_360, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_361, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_362, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5292: Col[i, j, 1] = green
__pyx_t_363 = __pyx_v_i;
__pyx_t_364 = __pyx_v_j;
__pyx_t_365 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_363, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5293: Col[i, j, 0] = blue
__pyx_t_366 = __pyx_v_i;
__pyx_t_367 = __pyx_v_j;
__pyx_t_368 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5294: a[k] = 1
__pyx_t_369 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_369, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5295: break
goto __pyx_L105_break;
5296:
5297:
5298:
5299: # INWARD
+5300: for i in range(imax, io - 1, -1):
__pyx_t_119 = (__pyx_v_io - 1);
for (__pyx_t_118 = __pyx_v_imax; __pyx_t_118 > __pyx_t_119; __pyx_t_118-=1) {
__pyx_v_i = __pyx_t_118;
+5301: for j in range(jo, jmax + 1):
__pyx_t_136 = (__pyx_v_jmax + 1);
for (__pyx_t_135 = __pyx_v_jo; __pyx_t_135 < __pyx_t_136; __pyx_t_135+=1) {
__pyx_v_j = __pyx_t_135;
+5302: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5303: if II[i, j] == Io:
__pyx_t_370 = __pyx_v_i;
__pyx_t_371 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_371, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L120_break:;
}
+5304: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5305: if I[i - 1, j] == Io:
__pyx_t_372 = (__pyx_v_i - 1);
__pyx_t_373 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_372, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_373, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5306: I[i, j] = Io
__pyx_t_374 = __pyx_v_i;
__pyx_t_375 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_375, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5307: Col[i, j, 2] = red
__pyx_t_376 = __pyx_v_i;
__pyx_t_377 = __pyx_v_j;
__pyx_t_378 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_376, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_377, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5308: Col[i, j, 1] = green
__pyx_t_379 = __pyx_v_i;
__pyx_t_380 = __pyx_v_j;
__pyx_t_381 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5309: Col[i, j, 0] = blue
__pyx_t_382 = __pyx_v_i;
__pyx_t_383 = __pyx_v_j;
__pyx_t_384 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_383, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5310: a[k] = 1
__pyx_t_385 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_385, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5311: break
goto __pyx_L120_break;
+5312: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5313: if I[i, j - 1] == Io:
__pyx_t_386 = __pyx_v_i;
__pyx_t_387 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_386, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_387, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5314: I[i, j] = Io
__pyx_t_388 = __pyx_v_i;
__pyx_t_389 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_389, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5315: Col[i, j, 2] = red
__pyx_t_390 = __pyx_v_i;
__pyx_t_391 = __pyx_v_j;
__pyx_t_392 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_390, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_391, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5316: Col[i, j, 1] = green
__pyx_t_393 = __pyx_v_i;
__pyx_t_394 = __pyx_v_j;
__pyx_t_395 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5317: Col[i, j, 0] = blue
__pyx_t_396 = __pyx_v_i;
__pyx_t_397 = __pyx_v_j;
__pyx_t_398 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_397, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_398, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5318: a[k] = 1
__pyx_t_399 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_399, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5319: break
goto __pyx_L120_break;
5320:
+5321: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5322: if I[i, j + 1] == Io:
__pyx_t_400 = __pyx_v_i;
__pyx_t_401 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_400, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_401, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5323: I[i, j] = Io
__pyx_t_402 = __pyx_v_i;
__pyx_t_403 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_402, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_403, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5324: Col[i, j, 2] = red
__pyx_t_404 = __pyx_v_i;
__pyx_t_405 = __pyx_v_j;
__pyx_t_406 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_404, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_405, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_406, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5325: Col[i, j, 1] = green
__pyx_t_407 = __pyx_v_i;
__pyx_t_408 = __pyx_v_j;
__pyx_t_409 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_407, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_408, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_409, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5326: Col[i, j, 0] = blue
__pyx_t_410 = __pyx_v_i;
__pyx_t_411 = __pyx_v_j;
__pyx_t_412 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_410, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_411, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_412, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5327: a[k] = 1
__pyx_t_413 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_413, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5328: break
goto __pyx_L120_break;
5329:
5330:
+5331: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5332: if I[i + 1, j] == Io:
__pyx_t_414 = (__pyx_v_i + 1);
__pyx_t_415 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_414, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_415, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5333: I[i, j] = Io
__pyx_t_416 = __pyx_v_i;
__pyx_t_417 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_416, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_417, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5334: Col[i, j, 2] = red
__pyx_t_418 = __pyx_v_i;
__pyx_t_419 = __pyx_v_j;
__pyx_t_420 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_418, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_419, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_420, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5335: Col[i, j, 1] = green
__pyx_t_421 = __pyx_v_i;
__pyx_t_422 = __pyx_v_j;
__pyx_t_423 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_421, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_422, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5336: Col[i, j, 0] = blue
__pyx_t_424 = __pyx_v_i;
__pyx_t_425 = __pyx_v_j;
__pyx_t_426 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_425, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_426, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5337: a[k] = 1
__pyx_t_427 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_427, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5338: break
goto __pyx_L120_break;
5339:
+5340: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_136 = (__pyx_v_jmin - 1);
for (__pyx_t_135 = (__pyx_v_jo - 1); __pyx_t_135 > __pyx_t_136; __pyx_t_135-=1) {
__pyx_v_j = __pyx_t_135;
+5341: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5342: if II[i, j] == Io:
__pyx_t_428 = __pyx_v_i;
__pyx_t_429 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_428, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_429, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L133_break:;
}
}
+5343: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5344: if I[i - 1, j] == Io:
__pyx_t_430 = (__pyx_v_i - 1);
__pyx_t_431 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_430, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_431, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5345: I[i, j] = Io
__pyx_t_432 = __pyx_v_i;
__pyx_t_433 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_432, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_433, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5346: Col[i, j, 2] = red
__pyx_t_434 = __pyx_v_i;
__pyx_t_435 = __pyx_v_j;
__pyx_t_436 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_434, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_435, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_436, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5347: Col[i, j, 1] = green
__pyx_t_437 = __pyx_v_i;
__pyx_t_438 = __pyx_v_j;
__pyx_t_439 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_439, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5348: Col[i, j, 0] = blue
__pyx_t_440 = __pyx_v_i;
__pyx_t_441 = __pyx_v_j;
__pyx_t_442 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_440, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5349: a[k] = 1
__pyx_t_443 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_443, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5350: break
goto __pyx_L133_break;
+5351: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5352: if I[i, j - 1] == Io:
__pyx_t_444 = __pyx_v_i;
__pyx_t_445 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_444, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_445, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5353: I[i, j] = Io
__pyx_t_446 = __pyx_v_i;
__pyx_t_447 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_446, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_447, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5354: Col[i, j, 2] = red
__pyx_t_448 = __pyx_v_i;
__pyx_t_449 = __pyx_v_j;
__pyx_t_450 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_448, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_449, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_450, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5355: Col[i, j, 1] = green
__pyx_t_451 = __pyx_v_i;
__pyx_t_452 = __pyx_v_j;
__pyx_t_453 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_451, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_452, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_453, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5356: Col[i, j, 0] = blue
__pyx_t_454 = __pyx_v_i;
__pyx_t_455 = __pyx_v_j;
__pyx_t_456 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_454, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5357: a[k] = 1
__pyx_t_457 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_457, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5358: break
goto __pyx_L133_break;
5359:
+5360: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5361: if I[i, j + 1] == Io:
__pyx_t_458 = __pyx_v_i;
__pyx_t_459 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_458, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_459, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5362: I[i, j] = Io
__pyx_t_460 = __pyx_v_i;
__pyx_t_461 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_460, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_461, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5363: Col[i, j, 2] = red
__pyx_t_462 = __pyx_v_i;
__pyx_t_463 = __pyx_v_j;
__pyx_t_464 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_462, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_463, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_464, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5364: Col[i, j, 1] = green
__pyx_t_465 = __pyx_v_i;
__pyx_t_466 = __pyx_v_j;
__pyx_t_467 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_465, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_466, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_467, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5365: Col[i, j, 0] = blue
__pyx_t_468 = __pyx_v_i;
__pyx_t_469 = __pyx_v_j;
__pyx_t_470 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_468, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_469, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_470, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5366: a[k] = 1
__pyx_t_471 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_471, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5367: break
goto __pyx_L133_break;
5368:
5369:
+5370: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5371: if I[i + 1, j] == Io:
__pyx_t_472 = (__pyx_v_i + 1);
__pyx_t_473 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_472, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_473, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5372: I[i, j] = Io
__pyx_t_474 = __pyx_v_i;
__pyx_t_475 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_474, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_475, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5373: Col[i, j, 2] = red
__pyx_t_476 = __pyx_v_i;
__pyx_t_477 = __pyx_v_j;
__pyx_t_478 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_476, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_477, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_478, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5374: Col[i, j, 1] = green
__pyx_t_479 = __pyx_v_i;
__pyx_t_480 = __pyx_v_j;
__pyx_t_481 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_479, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_480, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_481, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5375: Col[i, j, 0] = blue
__pyx_t_482 = __pyx_v_i;
__pyx_t_483 = __pyx_v_j;
__pyx_t_484 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_482, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_483, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_484, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5376: a[k] = 1
__pyx_t_485 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_485, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5377: break
goto __pyx_L133_break;
5378:
5379:
5380:
+5381: for i in range(imin, io, -1):
__pyx_t_119 = __pyx_v_io;
for (__pyx_t_118 = __pyx_v_imin; __pyx_t_118 > __pyx_t_119; __pyx_t_118-=1) {
__pyx_v_i = __pyx_t_118;
+5382: for j in range(jo, jmax + 1):
__pyx_t_136 = (__pyx_v_jmax + 1);
for (__pyx_t_135 = __pyx_v_jo; __pyx_t_135 < __pyx_t_136; __pyx_t_135+=1) {
__pyx_v_j = __pyx_t_135;
+5383: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5384: if II[i, j] == Io:
__pyx_t_486 = __pyx_v_i;
__pyx_t_487 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_486, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_487, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L148_break:;
}
+5385: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5386: if I[i - 1, j] == Io:
__pyx_t_488 = (__pyx_v_i - 1);
__pyx_t_489 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_488, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_489, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5387: I[i, j] = Io
__pyx_t_490 = __pyx_v_i;
__pyx_t_491 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_490, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_491, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5388: Col[i, j, 2] = red
__pyx_t_492 = __pyx_v_i;
__pyx_t_493 = __pyx_v_j;
__pyx_t_494 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_492, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_493, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_494, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5389: Col[i, j, 1] = green
__pyx_t_495 = __pyx_v_i;
__pyx_t_496 = __pyx_v_j;
__pyx_t_497 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_495, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_496, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_497, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5390: Col[i, j, 0] = blue
__pyx_t_498 = __pyx_v_i;
__pyx_t_499 = __pyx_v_j;
__pyx_t_500 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_498, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_499, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_500, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5391: a[k] = 1
__pyx_t_501 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_501, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5392: break
goto __pyx_L148_break;
+5393: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5394: if I[i, j - 1] == Io:
__pyx_t_502 = __pyx_v_i;
__pyx_t_503 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_502, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_503, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5395: I[i, j] = Io
__pyx_t_504 = __pyx_v_i;
__pyx_t_505 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_504, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_505, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5396: Col[i, j, 2] = red
__pyx_t_506 = __pyx_v_i;
__pyx_t_507 = __pyx_v_j;
__pyx_t_508 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_506, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_507, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_508, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5397: Col[i, j, 1] = green
__pyx_t_509 = __pyx_v_i;
__pyx_t_510 = __pyx_v_j;
__pyx_t_511 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_509, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_510, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_511, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5398: Col[i, j, 0] = blue
__pyx_t_512 = __pyx_v_i;
__pyx_t_513 = __pyx_v_j;
__pyx_t_514 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_512, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_513, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_514, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5399: a[k] = 1
__pyx_t_515 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_515, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5400: break
goto __pyx_L148_break;
5401:
+5402: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5403: if I[i, j + 1] == Io:
__pyx_t_516 = __pyx_v_i;
__pyx_t_517 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_516, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_517, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5404: I[i, j] = Io
__pyx_t_518 = __pyx_v_i;
__pyx_t_519 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_518, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_519, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5405: Col[i, j, 2] = red
__pyx_t_520 = __pyx_v_i;
__pyx_t_521 = __pyx_v_j;
__pyx_t_522 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_520, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_521, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_522, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5406: Col[i, j, 1] = green
__pyx_t_523 = __pyx_v_i;
__pyx_t_524 = __pyx_v_j;
__pyx_t_525 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_523, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_524, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_525, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5407: Col[i, j, 0] = blue
__pyx_t_526 = __pyx_v_i;
__pyx_t_527 = __pyx_v_j;
__pyx_t_528 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_526, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_527, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_528, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5408: a[k] = 1
__pyx_t_529 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_529, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5409: break
goto __pyx_L148_break;
5410:
5411:
+5412: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5413: if I[i + 1, j] == Io:
__pyx_t_530 = (__pyx_v_i + 1);
__pyx_t_531 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_530, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_531, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5414: I[i, j] = Io
__pyx_t_532 = __pyx_v_i;
__pyx_t_533 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_532, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_533, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5415: Col[i, j, 2] = red
__pyx_t_534 = __pyx_v_i;
__pyx_t_535 = __pyx_v_j;
__pyx_t_536 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_534, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_535, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_536, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5416: Col[i, j, 1] = green
__pyx_t_537 = __pyx_v_i;
__pyx_t_538 = __pyx_v_j;
__pyx_t_539 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_537, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_538, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_539, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5417: Col[i, j, 0] = blue
__pyx_t_540 = __pyx_v_i;
__pyx_t_541 = __pyx_v_j;
__pyx_t_542 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_540, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_541, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_542, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5418: a[k] = 1
__pyx_t_543 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_543, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5419: break
goto __pyx_L148_break;
5420:
+5421: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_136 = (__pyx_v_jmin - 1);
for (__pyx_t_135 = (__pyx_v_jo - 1); __pyx_t_135 > __pyx_t_136; __pyx_t_135-=1) {
__pyx_v_j = __pyx_t_135;
+5422: for dum in range(1):
for (__pyx_t_137 = 0; __pyx_t_137 < 1; __pyx_t_137+=1) {
__pyx_v_dum = __pyx_t_137;
+5423: if II[i, j] == Io:
__pyx_t_544 = __pyx_v_i;
__pyx_t_545 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_544, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_545, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L161_break:;
}
}
+5424: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5425: if I[i - 1, j] == Io:
__pyx_t_546 = (__pyx_v_i - 1);
__pyx_t_547 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_546, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_547, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5426: I[i, j] = Io
__pyx_t_548 = __pyx_v_i;
__pyx_t_549 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_548, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_549, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5427: Col[i, j, 2] = red
__pyx_t_550 = __pyx_v_i;
__pyx_t_551 = __pyx_v_j;
__pyx_t_552 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_550, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_551, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_552, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5428: Col[i, j, 1] = green
__pyx_t_553 = __pyx_v_i;
__pyx_t_554 = __pyx_v_j;
__pyx_t_555 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_553, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_554, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_555, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5429: Col[i, j, 0] = blue
__pyx_t_556 = __pyx_v_i;
__pyx_t_557 = __pyx_v_j;
__pyx_t_558 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_556, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_557, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_558, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5430: a[k] = 1
__pyx_t_559 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_559, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5431: break
goto __pyx_L161_break;
+5432: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5433: if I[i, j - 1] == Io:
__pyx_t_560 = __pyx_v_i;
__pyx_t_561 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_560, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_561, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5434: I[i, j] = Io
__pyx_t_562 = __pyx_v_i;
__pyx_t_563 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_562, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_563, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5435: Col[i, j, 2] = red
__pyx_t_564 = __pyx_v_i;
__pyx_t_565 = __pyx_v_j;
__pyx_t_566 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_564, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_565, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_566, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5436: Col[i, j, 1] = green
__pyx_t_567 = __pyx_v_i;
__pyx_t_568 = __pyx_v_j;
__pyx_t_569 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_567, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_568, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_569, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5437: Col[i, j, 0] = blue
__pyx_t_570 = __pyx_v_i;
__pyx_t_571 = __pyx_v_j;
__pyx_t_572 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_570, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_571, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_572, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5438: a[k] = 1
__pyx_t_573 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_573, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5439: break
goto __pyx_L161_break;
5440:
+5441: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5442: if I[i, j + 1] == Io:
__pyx_t_574 = __pyx_v_i;
__pyx_t_575 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_574, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_575, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5443: I[i, j] = Io
__pyx_t_576 = __pyx_v_i;
__pyx_t_577 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_576, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_577, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5444: Col[i, j, 2] = red
__pyx_t_578 = __pyx_v_i;
__pyx_t_579 = __pyx_v_j;
__pyx_t_580 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_578, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_579, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_580, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5445: Col[i, j, 1] = green
__pyx_t_581 = __pyx_v_i;
__pyx_t_582 = __pyx_v_j;
__pyx_t_583 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_581, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_582, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_583, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5446: Col[i, j, 0] = blue
__pyx_t_584 = __pyx_v_i;
__pyx_t_585 = __pyx_v_j;
__pyx_t_586 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_584, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_585, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_586, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5447: a[k] = 1
__pyx_t_587 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_587, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5448: break
goto __pyx_L161_break;
5449:
5450:
+5451: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5452: if I[i + 1, j] == Io:
__pyx_t_588 = (__pyx_v_i + 1);
__pyx_t_589 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_588, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_589, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5453: I[i, j] = Io
__pyx_t_590 = __pyx_v_i;
__pyx_t_591 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_590, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_591, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5454: Col[i, j, 2] = red
__pyx_t_592 = __pyx_v_i;
__pyx_t_593 = __pyx_v_j;
__pyx_t_594 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_592, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_593, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_594, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5455: Col[i, j, 1] = green
__pyx_t_595 = __pyx_v_i;
__pyx_t_596 = __pyx_v_j;
__pyx_t_597 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_595, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_596, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_597, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5456: Col[i, j, 0] = blue
__pyx_t_598 = __pyx_v_i;
__pyx_t_599 = __pyx_v_j;
__pyx_t_600 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_598, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_599, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_600, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5457: a[k] = 1
__pyx_t_601 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_601, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5458: break
goto __pyx_L161_break;
5459:
+5460: if a[k] == 0:
__pyx_t_119 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5461: xmin = max(0, xo - MAJceil)
__pyx_t_118 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_602 = 0;
if (((__pyx_t_118 > __pyx_t_602) != 0)) {
__pyx_t_136 = __pyx_t_118;
} else {
__pyx_t_136 = __pyx_t_602;
}
__pyx_v_xmin = __pyx_t_136;
+5462: xmax = min(m - 1, xo + MAJceil)
__pyx_t_136 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_118 = (__pyx_v_m - 1);
if (((__pyx_t_136 < __pyx_t_118) != 0)) {
__pyx_t_135 = __pyx_t_136;
} else {
__pyx_t_135 = __pyx_t_118;
}
__pyx_v_xmax = __pyx_t_135;
+5463: ymin = max(0, yo - MINceil)
__pyx_t_135 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_602 = 0;
if (((__pyx_t_135 > __pyx_t_602) != 0)) {
__pyx_t_136 = __pyx_t_135;
} else {
__pyx_t_136 = __pyx_t_602;
}
__pyx_v_ymin = __pyx_t_136;
+5464: ymax = min(n - 1, yo + MINceil)
__pyx_t_136 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_135 = (__pyx_v_n - 1);
if (((__pyx_t_136 < __pyx_t_135) != 0)) {
__pyx_t_118 = __pyx_t_136;
} else {
__pyx_t_118 = __pyx_t_135;
}
__pyx_v_ymax = __pyx_t_118;
+5465: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_118 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
5466:
5467:
5468:
5469:
+5470: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+5471: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
}
+5472: if asy == 0:
__pyx_t_23 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5473: break
goto __pyx_L12_break;
5474: else:
+5475: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_27 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_27); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5475, __pyx_L1_error)
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_27, __pyx_n_s_all); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5475, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__pyx_t_27 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
}
}
if (__pyx_t_27) {
__pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5475, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
} else {
__pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5475, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = __Pyx_PyInt_EqObjC(__pyx_t_5, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5475, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 5475, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if (__pyx_t_23) {
/* … */
}
+5476: break
goto __pyx_L12_break;
5477: else:
+5478: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5478, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+5479: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_61 = PyTuple_New(2); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_61, 1, __pyx_t_27); __pyx_t_7 = 0; __pyx_t_27 = 0; __pyx_t_27 = PyTuple_New(1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_61); __pyx_t_61 = 0; __pyx_t_61 = PyDict_New(); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_61, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_27, __pyx_t_61); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5479, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5479, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5479, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+5480: a = np.ones(p, dtype=np.int8)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ones); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_27 = PyTuple_New(1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_27, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5480, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5480, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5480, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+5481: MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_27 = PyTuple_New(1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_61 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_27, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5481, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5481, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_v_MAJ, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5481, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_MAJ, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+5482: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_centroids); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_61 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); __pyx_t_26 = 1; } } __pyx_t_4 = PyTuple_New(4+__pyx_t_26); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_26, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_26, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 2+__pyx_t_26, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_4, 3+__pyx_t_26, __pyx_t_61); __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_61 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) { PyObject* sequence = __pyx_t_5; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 5482, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_27 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_27 = PyList_GET_ITEM(sequence, 0); __pyx_t_4 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(__pyx_t_4); #else __pyx_t_27 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); #endif __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { Py_ssize_t index = -1; __pyx_t_61 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5482, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_61)->tp_iternext; index = 0; __pyx_t_27 = __pyx_t_24(__pyx_t_61); if (unlikely(!__pyx_t_27)) goto __pyx_L174_unpacking_failed; __Pyx_GOTREF(__pyx_t_27); index = 1; __pyx_t_4 = __pyx_t_24(__pyx_t_61); if (unlikely(!__pyx_t_4)) goto __pyx_L174_unpacking_failed; __Pyx_GOTREF(__pyx_t_4); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_61), 2) < 0) __PYX_ERR(0, 5482, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; goto __pyx_L175_unpacking_done; __pyx_L174_unpacking_failed:; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 5482, __pyx_L1_error) __pyx_L175_unpacking_done:; } if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5482, __pyx_L1_error) if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5482, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5482, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0; __pyx_t_13 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5482, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+5483: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
5484:
+5485: toc = time.time()
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5485, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_time); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5485, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (__pyx_t_4) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5485, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5485, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 5485, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_toc = __pyx_t_22;
+5486: obj.exetime = toc - tic
__pyx_t_5 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5486, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_5) < 0) __PYX_ERR(0, 5486, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+5487: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 5487, __pyx_L1_error)
+5488: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 5488, __pyx_L1_error)
+5489: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 5489, __pyx_L1_error)
+5490: obj.RVal = RVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_RVal, ((PyObject *)__pyx_v_RVal)) < 0) __PYX_ERR(0, 5490, __pyx_L1_error)
+5491: obj.adotVal = adotVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_adotVal, ((PyObject *)__pyx_v_adotVal)) < 0) __PYX_ERR(0, 5491, __pyx_L1_error)
+5492: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 5492, __pyx_L1_error)
+5493: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
5494:
+5495: def Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_43Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_43Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_43Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_43Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_42Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_42Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_seq;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_MAJceil;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_MIN;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_dr;
float __pyx_v_tmp;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_Rval = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
double __pyx_v_adotValmax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rval;
__Pyx_Buffer __pyx_pybuffer_Rval;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_Rval.pybuffer.buf = NULL;
__pyx_pybuffer_Rval.refcount = 0;
__pyx_pybuffernd_Rval.data = NULL;
__pyx_pybuffernd_Rval.rcbuffer = &__pyx_pybuffer_Rval;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_4);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_27);
__Pyx_XDECREF(__pyx_t_61);
__Pyx_XDECREF(__pyx_t_67);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_Rval);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__53 = PyTuple_Pack(64, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Adotfunc, __pyx_n_s_Thetafunc, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_MN, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_countim, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_MIN, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_dr, __pyx_n_s_tmp, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_MAJ, __pyx_n_s_adotVal, __pyx_n_s_Rval, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_adotValmax); if (unlikely(!__pyx_tuple__53)) __PYX_ERR(0, 5495, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__53);
__Pyx_GIVEREF(__pyx_tuple__53);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_43Evolve_2D_Anisotropic_SiteSaturated_Generic_Elliptical_with_aspect_with_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5495, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_12, __pyx_t_2) < 0) __PYX_ERR(0, 5495, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__54 = (PyObject*)__Pyx_PyCode_New(1, 0, 64, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__53, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_12, 5495, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__54)) __PYX_ERR(0, 5495, __pyx_L1_error)
5496:
5497: # Grabbing data from the input object
+5498: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5498, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+5499: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5499, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+5500: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5500, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+5501: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5501, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5501, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+5502: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5502, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5502, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+5503: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5503, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5503, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+5504: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5504, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 5504, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_3;
+5505: cdef int seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5505, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 5505, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_3;
+5506: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5506, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 5506, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_3;
+5507: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5507, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 5507, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_3;
+5508: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5508, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+5509: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5509, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+5510: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5510, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
+5511: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5511, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
+5512: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5512, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
5513:
5514: # Declaring other variables
5515: cdef double tic, toc
5516: cdef long long deli, delj, MN, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, dum, countim, i, j, k, xo, yo, delX, delY, MAJceil, MINceil, Iter
5517: cdef float MIN, theta, c, s, dr, tmp, red, green, blue
+5518: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5518, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5518, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5518, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_8 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+5519: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5519, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5519, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5519, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+5520: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5520, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5520, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5520, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+5521: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5521, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5521, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5521, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+5522: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5522, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5522, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5522, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+5523: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(p, dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5523, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5523, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5523, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+5524: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5524, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5524, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5524, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+5525: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(p, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5525, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5525, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5525, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+5526: cdef np.ndarray[np.float64_t, ndim = 1] Rval = np.zeros(p, dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5526, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5526, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Rval = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5526, __pyx_L1_error) } else {__pyx_pybuffernd_Rval.diminfo[0].strides = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rval.diminfo[0].shape = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Rval = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+5527: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_4 = 0; __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5527, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5527, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5527, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+5528: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5528, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5528, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 5528, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_18 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_4); __pyx_t_4 = 0;
+5529: plantseed(myseed)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5529, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5529, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+5530: col = np.random.random((p, 3))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_6) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5530, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5530, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5530, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+5531: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5531, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_5) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5531, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5531, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 5531, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_tic = __pyx_t_22;
5532:
5533:
+5534: if pdelNxy == []:
__pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5534, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5534, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 5534, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_23) { /* … */ goto __pyx_L3; }
+5535: [X, Y] = randindex2D(m, n, p)
__pyx_t_7 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5535, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 5535, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5535, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5535, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5535, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_5 = __pyx_t_24(__pyx_t_1); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_1), 2) < 0) __PYX_ERR(0, 5535, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 5535, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5535, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5535, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5535, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5535, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
5536: else:
+5537: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_25 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_25 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_25)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_25);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_27 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
if (__pyx_t_25) {
__Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_25); __pyx_t_25 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_27, 0+__pyx_t_26, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 1+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_27, 2+__pyx_t_26, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_27, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_27, 4+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_27, 5+__pyx_t_26, __pyx_t_6);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_27, 6+__pyx_t_26, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_27, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 5537, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_27 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_4 = PyList_GET_ITEM(sequence, 0);
__pyx_t_27 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_4);
__Pyx_INCREF(__pyx_t_27);
#else
__pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_27 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5537, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_24 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_4 = __pyx_t_24(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_4);
index = 1; __pyx_t_27 = __pyx_t_24(__pyx_t_6); if (unlikely(!__pyx_t_27)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_27);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_6), 2) < 0) __PYX_ERR(0, 5537, __pyx_L1_error)
__pyx_t_24 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_24 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 5537, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5537, __pyx_L1_error)
if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5537, __pyx_L1_error)
__pyx_t_11 = ((PyArrayObject *)__pyx_t_4);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5537, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_4));
__pyx_t_4 = 0;
__pyx_t_12 = ((PyArrayObject *)__pyx_t_27);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5537, __pyx_L1_error)
}
__pyx_t_12 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_27));
__pyx_t_27 = 0;
}
__pyx_L3:;
5538:
+5539: if labelsorted == 1:
__pyx_t_23 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_23) {
/* … */
}
+5540: X, Y = labelsort(n, X, Y)
__pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); __pyx_t_26 = 1; } } __pyx_t_1 = PyTuple_New(3+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_6) { __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL; } __Pyx_GIVEREF(__pyx_t_4); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_t_4); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_26, ((PyObject *)__pyx_v_Y)); __pyx_t_4 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { PyObject* sequence = __pyx_t_7; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 5540, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_27 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_27 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_27 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { Py_ssize_t index = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5540, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_4)->tp_iternext; index = 0; __pyx_t_27 = __pyx_t_24(__pyx_t_4); if (unlikely(!__pyx_t_27)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_27); index = 1; __pyx_t_1 = __pyx_t_24(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_4), 2) < 0) __PYX_ERR(0, 5540, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 5540, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5540, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 5540, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5540, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 5540, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
5541:
+5542: Iter = 1
__pyx_v_Iter = 1;
5543:
+5544: while True:
while (1) {
5545:
+5546: if seq == 1:
switch (__pyx_v_seq) {
case 1:
/* … */
break;
+5547: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5548: I[X[k], Y[k]] = k + 1
__pyx_t_29 = __pyx_v_k;
__pyx_t_30 = __pyx_v_k;
__pyx_t_31 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_32 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_32, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5549: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_33 = __pyx_v_k;
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = __pyx_v_k;
__pyx_t_37 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_38 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_39 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+5550: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_40 = __pyx_v_k;
__pyx_t_41 = 1;
__pyx_t_42 = __pyx_v_k;
__pyx_t_43 = __pyx_v_k;
__pyx_t_44 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_45 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_col.diminfo[1].strides));
+5551: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_k;
__pyx_t_50 = __pyx_v_k;
__pyx_t_51 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_52 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_53 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+5552: Theta[k] = Thetafunc(X[k], Y[k], k + 1, 1, 1)
__pyx_t_54 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_55 = __pyx_v_k;
__pyx_t_27 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_6 = __pyx_v_Thetafunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_25 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_26, __pyx_t_4);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_1 = 0;
__pyx_t_27 = 0;
__pyx_t_4 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5552, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5552, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_57 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
+5553: Rval[k] = Rfunc(X[k], Y[k], k + 1, 1, Theta[k])
__pyx_t_58 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_59 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_60 = __pyx_v_k;
__pyx_t_27 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_1 = __pyx_v_Rfunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_61 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_61, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_61, 1+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_61, 2+__pyx_t_26, __pyx_t_4);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_61, 3+__pyx_t_26, __pyx_int_1);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_61, 4+__pyx_t_26, __pyx_t_27);
__pyx_t_6 = 0;
__pyx_t_25 = 0;
__pyx_t_4 = 0;
__pyx_t_27 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_61, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5553, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_62 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
+5554: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, Theta[k], Rval[k])
__pyx_t_63 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_64 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_65 = __pyx_v_k;
__pyx_t_4 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_66 = __pyx_v_k;
__pyx_t_25 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_6 = __pyx_v_Adotfunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_67 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_67, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_67, 0+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_67, 1+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_67, 2+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_67, 3+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_67, 4+__pyx_t_26, __pyx_t_25);
__pyx_t_1 = 0;
__pyx_t_61 = 0;
__pyx_t_27 = 0;
__pyx_t_4 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_67, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_67); __pyx_t_67 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5554, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_68 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
}
5555:
+5556: elif seq == 2:
case 2:
/* … */
break;
+5557: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5558: I[X[k], Y[k]] = k + 1
__pyx_t_69 = __pyx_v_k;
__pyx_t_70 = __pyx_v_k;
__pyx_t_71 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_72 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5559: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_73 = __pyx_v_k;
__pyx_t_74 = 0;
__pyx_t_75 = __pyx_v_k;
__pyx_t_76 = __pyx_v_k;
__pyx_t_77 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_78 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_79 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
+5560: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_80 = __pyx_v_k;
__pyx_t_81 = 1;
__pyx_t_82 = __pyx_v_k;
__pyx_t_83 = __pyx_v_k;
__pyx_t_84 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_85 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_86 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_85, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_86, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_col.diminfo[1].strides));
+5561: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_87 = __pyx_v_k;
__pyx_t_88 = 2;
__pyx_t_89 = __pyx_v_k;
__pyx_t_90 = __pyx_v_k;
__pyx_t_91 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_92 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_93 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_93, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_88, __pyx_pybuffernd_col.diminfo[1].strides));
+5562: Theta[k] = Thetafunc(X[k], Y[k], k + 1, 1, 1)
__pyx_t_94 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_95 = __pyx_v_k;
__pyx_t_67 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_4 = __pyx_v_Thetafunc; __pyx_t_27 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_61 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
if (__pyx_t_27) {
__Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_27); __pyx_t_27 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_61, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_67);
PyTuple_SET_ITEM(__pyx_t_61, 1+__pyx_t_26, __pyx_t_67);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_61, 2+__pyx_t_26, __pyx_t_25);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_61, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_61, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_67 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_61, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5562, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5562, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_96 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
+5563: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, Theta[k], 1)
__pyx_t_97 = __pyx_v_k;
__pyx_t_4 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_98 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_99 = __pyx_v_k;
__pyx_t_67 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_6 = __pyx_v_Adotfunc; __pyx_t_27 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_1 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_27) {
__Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_27); __pyx_t_27 = NULL;
}
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_67);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_26, __pyx_t_67);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_4 = 0;
__pyx_t_61 = 0;
__pyx_t_25 = 0;
__pyx_t_67 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5563, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5563, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_100 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
+5564: Rval[k] = Rfunc(X[k], Y[k], k + 1, adotVal[k], Theta[k])
__pyx_t_101 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_102 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_67 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
__pyx_t_103 = __pyx_v_k;
__pyx_t_25 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_104 = __pyx_v_k;
__pyx_t_61 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_4 = __pyx_v_Rfunc; __pyx_t_27 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_5 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_27) {
__Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_27); __pyx_t_27 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_67);
PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, __pyx_t_67);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_26, __pyx_t_61);
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_67 = 0;
__pyx_t_25 = 0;
__pyx_t_61 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5564, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_105 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
}
5565:
+5566: elif seq == 3:
case 3:
/* … */
break;
+5567: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5568: I[X[k], Y[k]] = k + 1
__pyx_t_106 = __pyx_v_k;
__pyx_t_107 = __pyx_v_k;
__pyx_t_108 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_109 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5569: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_110 = __pyx_v_k;
__pyx_t_111 = 0;
__pyx_t_112 = __pyx_v_k;
__pyx_t_113 = __pyx_v_k;
__pyx_t_114 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_115 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_116 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_col.diminfo[1].strides));
+5570: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_117 = __pyx_v_k;
__pyx_t_118 = 1;
__pyx_t_119 = __pyx_v_k;
__pyx_t_120 = __pyx_v_k;
__pyx_t_121 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_122 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_123 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_col.diminfo[1].strides));
+5571: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_124 = __pyx_v_k;
__pyx_t_125 = 2;
__pyx_t_126 = __pyx_v_k;
__pyx_t_127 = __pyx_v_k;
__pyx_t_128 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_129 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_130 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_col.diminfo[1].strides));
+5572: Rval[k] = Rfunc(X[k], Y[k], k + 1, 1, 0)
__pyx_t_131 = __pyx_v_k;
__pyx_t_4 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5572, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_132 = __pyx_v_k;
__pyx_t_5 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5572, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_61 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5572, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_25 = __pyx_v_Rfunc; __pyx_t_67 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_25))) {
__pyx_t_67 = PyMethod_GET_SELF(__pyx_t_25);
if (likely(__pyx_t_67)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25);
__Pyx_INCREF(__pyx_t_67);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_25, function);
__pyx_t_26 = 1;
}
}
__pyx_t_1 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5572, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_67) {
__Pyx_GIVEREF(__pyx_t_67); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_67); __pyx_t_67 = NULL;
}
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_26, __pyx_t_61);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_26, __pyx_int_0);
__pyx_t_4 = 0;
__pyx_t_5 = 0;
__pyx_t_61 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5572, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5572, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_133 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
+5573: Theta[k] = Thetafunc(X[k], Y[k], k + 1, Rval[k], 1)
__pyx_t_134 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5573, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_135 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5573, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_61 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5573, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_136 = __pyx_v_k;
__pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_136, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5573, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_4 = __pyx_v_Thetafunc; __pyx_t_67 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_4))) {
__pyx_t_67 = PyMethod_GET_SELF(__pyx_t_4);
if (likely(__pyx_t_67)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4);
__Pyx_INCREF(__pyx_t_67);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_4, function);
__pyx_t_26 = 1;
}
}
__pyx_t_6 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5573, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_67) {
__Pyx_GIVEREF(__pyx_t_67); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_67); __pyx_t_67 = NULL;
}
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_26, __pyx_t_5);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_6, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_25 = 0;
__pyx_t_1 = 0;
__pyx_t_61 = 0;
__pyx_t_5 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5573, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5573, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_137 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
+5574: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, Theta[k], Rval[k])
__pyx_t_138 = __pyx_v_k;
__pyx_t_4 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_139 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_140 = __pyx_v_k;
__pyx_t_61 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_141 = __pyx_v_k;
__pyx_t_1 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_141, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_25 = __pyx_v_Adotfunc; __pyx_t_67 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_25))) {
__pyx_t_67 = PyMethod_GET_SELF(__pyx_t_25);
if (likely(__pyx_t_67)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25);
__Pyx_INCREF(__pyx_t_67);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_25, function);
__pyx_t_26 = 1;
}
}
__pyx_t_27 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
if (__pyx_t_67) {
__Pyx_GIVEREF(__pyx_t_67); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_67); __pyx_t_67 = NULL;
}
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_27, 0+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_27, 1+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_27, 2+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_27, 3+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_27, 4+__pyx_t_26, __pyx_t_1);
__pyx_t_4 = 0;
__pyx_t_6 = 0;
__pyx_t_5 = 0;
__pyx_t_61 = 0;
__pyx_t_1 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_27, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5574, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_142 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
}
5575:
5576:
+5577: elif seq == 4:
case 4:
/* … */
break;
+5578: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5579: I[X[k], Y[k]] = k + 1
__pyx_t_143 = __pyx_v_k;
__pyx_t_144 = __pyx_v_k;
__pyx_t_145 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_146 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5580: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_147 = __pyx_v_k;
__pyx_t_148 = 0;
__pyx_t_149 = __pyx_v_k;
__pyx_t_150 = __pyx_v_k;
__pyx_t_151 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_152 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_153 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_col.diminfo[1].strides));
+5581: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_154 = __pyx_v_k;
__pyx_t_155 = 1;
__pyx_t_156 = __pyx_v_k;
__pyx_t_157 = __pyx_v_k;
__pyx_t_158 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_159 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_160 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_col.diminfo[1].strides));
+5582: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_161 = __pyx_v_k;
__pyx_t_162 = 2;
__pyx_t_163 = __pyx_v_k;
__pyx_t_164 = __pyx_v_k;
__pyx_t_165 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_166 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_167 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_col.diminfo[1].strides));
+5583: Rval[k] = Rfunc(X[k], Y[k], k + 1, 1, 0)
__pyx_t_168 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5583, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_169 = __pyx_v_k;
__pyx_t_27 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_169, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5583, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5583, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_61 = __pyx_v_Rfunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_61))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_61);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_61, function);
__pyx_t_26 = 1;
}
}
__pyx_t_6 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5583, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_26, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_26, __pyx_int_1);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_6, 4+__pyx_t_26, __pyx_int_0);
__pyx_t_25 = 0;
__pyx_t_27 = 0;
__pyx_t_1 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5583, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5583, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_170 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
+5584: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, 0, Rval[k])
__pyx_t_171 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_172 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_172, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_173 = __pyx_v_k;
__pyx_t_27 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_25 = __pyx_v_Adotfunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_25))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_25);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_25, function);
__pyx_t_26 = 1;
}
}
__pyx_t_4 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_4, 2+__pyx_t_26, __pyx_t_1);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_4, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_4, 4+__pyx_t_26, __pyx_t_27);
__pyx_t_61 = 0;
__pyx_t_6 = 0;
__pyx_t_1 = 0;
__pyx_t_27 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5584, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5584, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_174 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
+5585: Theta[k] = Thetafunc(X[k], Y[k], k + 1, Rval[k], adotVal[k])
__pyx_t_175 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_176 = __pyx_v_k;
__pyx_t_4 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_176, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__pyx_t_177 = __pyx_v_k;
__pyx_t_1 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_178 = __pyx_v_k;
__pyx_t_6 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_178, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_61 = __pyx_v_Thetafunc; __pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_61))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_61);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_61, function);
__pyx_t_26 = 1;
}
}
__pyx_t_67 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_67, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_67, 0+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_67, 1+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_27);
PyTuple_SET_ITEM(__pyx_t_67, 2+__pyx_t_26, __pyx_t_27);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_67, 3+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_67, 4+__pyx_t_26, __pyx_t_6);
__pyx_t_25 = 0;
__pyx_t_4 = 0;
__pyx_t_27 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_67, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_67); __pyx_t_67 = 0;
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5585, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_179 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
}
5586:
5587:
+5588: elif seq == 5:
case 5:
/* … */
break;
+5589: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5590: I[X[k], Y[k]] = k + 1
__pyx_t_180 = __pyx_v_k;
__pyx_t_181 = __pyx_v_k;
__pyx_t_182 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_180, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_183 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5591: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_184 = __pyx_v_k;
__pyx_t_185 = 0;
__pyx_t_186 = __pyx_v_k;
__pyx_t_187 = __pyx_v_k;
__pyx_t_188 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_186, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_189 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_190 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_col.diminfo[1].strides));
+5592: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_191 = __pyx_v_k;
__pyx_t_192 = 1;
__pyx_t_193 = __pyx_v_k;
__pyx_t_194 = __pyx_v_k;
__pyx_t_195 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_193, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_196 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_194, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_197 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_col.diminfo[1].strides));
+5593: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_198 = __pyx_v_k;
__pyx_t_199 = 2;
__pyx_t_200 = __pyx_v_k;
__pyx_t_201 = __pyx_v_k;
__pyx_t_202 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_200, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_203 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_204 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_col.diminfo[1].strides));
+5594: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, 0, 1)
__pyx_t_205 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5594, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_206 = __pyx_v_k;
__pyx_t_67 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_206, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5594, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5594, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_1 = __pyx_v_Adotfunc; __pyx_t_27 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_4 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5594, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
if (__pyx_t_27) {
__Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_27); __pyx_t_27 = NULL;
}
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_4, 0+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_67);
PyTuple_SET_ITEM(__pyx_t_4, 1+__pyx_t_26, __pyx_t_67);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_4, 2+__pyx_t_26, __pyx_t_6);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_4, 3+__pyx_t_26, __pyx_int_0);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_4, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_61 = 0;
__pyx_t_67 = 0;
__pyx_t_6 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5594, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5594, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_207 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
+5595: Theta[k] = Thetafunc(X[k], Y[k], k + 1, 1, adotVal[k])
__pyx_t_208 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_209 = __pyx_v_k;
__pyx_t_4 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_210 = __pyx_v_k;
__pyx_t_67 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_210, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_61 = __pyx_v_Thetafunc; __pyx_t_27 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_61))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_61);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_61, function);
__pyx_t_26 = 1;
}
}
__pyx_t_25 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_27) {
__Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_27); __pyx_t_27 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_26, __pyx_t_6);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_26, __pyx_int_1);
__Pyx_GIVEREF(__pyx_t_67);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_26, __pyx_t_67);
__pyx_t_1 = 0;
__pyx_t_4 = 0;
__pyx_t_6 = 0;
__pyx_t_67 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5595, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5595, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_211 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_211, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
+5596: Rval[k] = Rfunc(X[k], Y[k], k + 1, adotVal[k], Theta[k])
__pyx_t_212 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_213 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_213, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_67 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_67)) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_67);
__pyx_t_214 = __pyx_v_k;
__pyx_t_6 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_214, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_215 = __pyx_v_k;
__pyx_t_4 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_1 = __pyx_v_Rfunc; __pyx_t_27 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_27 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_27)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_27);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_5 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_27) {
__Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_27); __pyx_t_27 = NULL;
}
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_67);
PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, __pyx_t_67);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_26, __pyx_t_4);
__pyx_t_61 = 0;
__pyx_t_25 = 0;
__pyx_t_67 = 0;
__pyx_t_6 = 0;
__pyx_t_4 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5596, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_216 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_216, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
}
5597:
+5598: elif seq == 6:
case 6:
/* … */
break;
default: break;
}
+5599: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5600: I[X[k], Y[k]] = k + 1
__pyx_t_217 = __pyx_v_k;
__pyx_t_218 = __pyx_v_k;
__pyx_t_219 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_220 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_218, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_219, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_220, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+5601: Col[X[k], Y[k], 2] = col[k, 0]
__pyx_t_221 = __pyx_v_k;
__pyx_t_222 = 0;
__pyx_t_223 = __pyx_v_k;
__pyx_t_224 = __pyx_v_k;
__pyx_t_225 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_226 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_224, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_227 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_222, __pyx_pybuffernd_col.diminfo[1].strides));
+5602: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_228 = __pyx_v_k;
__pyx_t_229 = 1;
__pyx_t_230 = __pyx_v_k;
__pyx_t_231 = __pyx_v_k;
__pyx_t_232 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_230, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_233 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_231, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_234 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_228, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_229, __pyx_pybuffernd_col.diminfo[1].strides));
+5603: Col[X[k], Y[k], 0] = col[k, 2]
__pyx_t_235 = __pyx_v_k;
__pyx_t_236 = 2;
__pyx_t_237 = __pyx_v_k;
__pyx_t_238 = __pyx_v_k;
__pyx_t_239 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_237, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_240 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_238, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_241 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_236, __pyx_pybuffernd_col.diminfo[1].strides));
+5604: adotVal[k] = Adotfunc(X[k], Y[k], k + 1, 0, 1)
__pyx_t_242 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5604, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_243 = __pyx_v_k;
__pyx_t_5 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_243, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5604, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5604, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__Pyx_INCREF(__pyx_v_Adotfunc);
__pyx_t_6 = __pyx_v_Adotfunc; __pyx_t_67 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_67 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_67)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_67);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_25 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5604, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_67) {
__Pyx_GIVEREF(__pyx_t_67); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_67); __pyx_t_67 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_26, __pyx_t_4);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_26, __pyx_int_0);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_26, __pyx_int_1);
__pyx_t_1 = 0;
__pyx_t_5 = 0;
__pyx_t_4 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5604, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5604, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_244 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_244, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_56;
+5605: Rval[k] = Rfunc(X[k], Y[k], k + 1, adotVal[k], 0)
__pyx_t_245 = __pyx_v_k;
__pyx_t_6 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5605, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_246 = __pyx_v_k;
__pyx_t_25 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_246, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5605, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_4 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5605, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_247 = __pyx_v_k;
__pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5605, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_INCREF(__pyx_v_Rfunc);
__pyx_t_1 = __pyx_v_Rfunc; __pyx_t_67 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_67 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_67)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_67);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_61 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5605, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
if (__pyx_t_67) {
__Pyx_GIVEREF(__pyx_t_67); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_67); __pyx_t_67 = NULL;
}
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_61, 0+__pyx_t_26, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_61, 1+__pyx_t_26, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_61, 2+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_61, 3+__pyx_t_26, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_61, 4+__pyx_t_26, __pyx_int_0);
__pyx_t_6 = 0;
__pyx_t_25 = 0;
__pyx_t_4 = 0;
__pyx_t_5 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_61, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5605, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5605, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_248 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_248, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_56;
+5606: Theta[k] = Thetafunc(X[k], Y[k], k + 1, Rval[k], adotVal[k])
__pyx_t_249 = __pyx_v_k;
__pyx_t_1 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_X.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_250 = __pyx_v_k;
__pyx_t_61 = __Pyx_PyInt_From_npy_int64((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_250, __pyx_pybuffernd_Y.diminfo[0].strides))); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_61);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_k + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_251 = __pyx_v_k;
__pyx_t_4 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_251, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_4);
__pyx_t_252 = __pyx_v_k;
__pyx_t_25 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_252, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_INCREF(__pyx_v_Thetafunc);
__pyx_t_6 = __pyx_v_Thetafunc; __pyx_t_67 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) {
__pyx_t_67 = PyMethod_GET_SELF(__pyx_t_6);
if (likely(__pyx_t_67)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6);
__Pyx_INCREF(__pyx_t_67);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_6, function);
__pyx_t_26 = 1;
}
}
__pyx_t_27 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
if (__pyx_t_67) {
__Pyx_GIVEREF(__pyx_t_67); PyTuple_SET_ITEM(__pyx_t_27, 0, __pyx_t_67); __pyx_t_67 = NULL;
}
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_27, 0+__pyx_t_26, __pyx_t_1);
__Pyx_GIVEREF(__pyx_t_61);
PyTuple_SET_ITEM(__pyx_t_27, 1+__pyx_t_26, __pyx_t_61);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_27, 2+__pyx_t_26, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_4);
PyTuple_SET_ITEM(__pyx_t_27, 3+__pyx_t_26, __pyx_t_4);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_27, 4+__pyx_t_26, __pyx_t_25);
__pyx_t_1 = 0;
__pyx_t_61 = 0;
__pyx_t_5 = 0;
__pyx_t_4 = 0;
__pyx_t_25 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_27, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_56 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_56 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 5606, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_253 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_253, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_56;
}
5607:
+5608: showriteframe(sa, sf, fd, 0, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, 0, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
5609:
+5610: countim = 0
__pyx_v_countim = 0;
+5611: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_27);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) {
__pyx_t_6 = PyMethod_GET_SELF(__pyx_t_27);
if (likely(__pyx_t_6)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27);
__Pyx_INCREF(__pyx_t_6);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_27, function);
}
}
if (!__pyx_t_6) {
__pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_27, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
} else {
__pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_6); __pyx_t_6 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_25, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
}
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
__pyx_t_27 = PyObject_RichCompare(__pyx_t_7, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_27); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5611, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_27); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 5611, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0;
if (!__pyx_t_23) break;
+5612: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
+5613: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+5614: for i in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_i = __pyx_t_28;
+5615: if a[i] == 1:
__pyx_t_254 = __pyx_v_i;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+5616: tmp = adotVal[i]
__pyx_t_255 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_255, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+5617: if tmp > adotValmax:
__pyx_t_23 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_23) {
/* … */
}
+5618: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
5619:
+5620: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_28 = 0; __pyx_t_28 < __pyx_t_2; __pyx_t_28+=1) {
__pyx_v_k = __pyx_t_28;
+5621: if a[k] == 1:
__pyx_t_256 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+5622: a[k] = 0
__pyx_t_257 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_257, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+5623: xo = X[k]
__pyx_t_258 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_258, __pyx_pybuffernd_X.diminfo[0].strides));
+5624: yo = Y[k]
__pyx_t_259 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_Y.diminfo[0].strides));
+5625: Io = I[xo, yo]
__pyx_t_260 = __pyx_v_xo;
__pyx_t_261 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_260, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_261, __pyx_pybuffernd_I.diminfo[1].strides));
+5626: theta = Theta[k]
__pyx_t_262 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_262, __pyx_pybuffernd_Theta.diminfo[0].strides));
5627:
+5628: c = math.cos(theta)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_cos); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_6) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_7); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5628, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_4 = PyTuple_New(1+1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_4, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_4, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_263 = __pyx_PyFloat_AsFloat(__pyx_t_27); if (unlikely((__pyx_t_263 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 5628, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_v_c = __pyx_t_263;
+5629: s = -math.sin(theta)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_sin); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_4))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_4, function); } } if (!__pyx_t_7) { __pyx_t_27 = __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_25); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_GOTREF(__pyx_t_27); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = PyNumber_Negative(__pyx_t_27); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_263 = __pyx_PyFloat_AsFloat(__pyx_t_4); if (unlikely((__pyx_t_263 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 5629, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_s = __pyx_t_263;
5630:
+5631: dr = adotVal[k] / adotValmax
__pyx_t_264 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_264, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+5632: MAJ[k] = MAJ[k] + dr
__pyx_t_265 = __pyx_v_k;
__pyx_t_266 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_265, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+5633: MIN = MAJ[k] / Rval[k]
__pyx_t_267 = __pyx_v_k;
__pyx_t_268 = __pyx_v_k;
__pyx_v_MIN = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_267, __pyx_pybuffernd_MAJ.diminfo[0].strides)) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_268, __pyx_pybuffernd_Rval.diminfo[0].strides)));
+5634: MAJceil = math.ceil(MAJ[k])
__pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5634, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_27, __pyx_n_s_ceil); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5634, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_269 = __pyx_v_k; __pyx_t_27 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_269, __pyx_pybuffernd_MAJ.diminfo[0].strides))); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5634, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_25 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_25) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_27); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5634, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5634, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_25); __pyx_t_25 = NULL; __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_27); __pyx_t_27 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5634, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_270 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_4); if (unlikely((__pyx_t_270 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5634, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_MAJceil = __pyx_t_270;
+5635: MINceil = math.ceil(MIN)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_27 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_27 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_27)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_27) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5635, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_27); __pyx_t_27 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_25, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_270 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_4); if (unlikely((__pyx_t_270 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5635, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_MINceil = __pyx_t_270;
+5636: red = col[k, 0]
__pyx_t_270 = __pyx_v_k;
__pyx_t_271 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_271, __pyx_pybuffernd_col.diminfo[1].strides));
+5637: green = col[k, 1]
__pyx_t_272 = __pyx_v_k;
__pyx_t_273 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_272, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_273, __pyx_pybuffernd_col.diminfo[1].strides));
+5638: blue = col[k, 2]
__pyx_t_274 = __pyx_v_k;
__pyx_t_275 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_274, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_275, __pyx_pybuffernd_col.diminfo[1].strides));
5639:
+5640: delX = math.ceil(math.sqrt((MAJ[k] * c) ** 2 + (MIN * s) ** 2))
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ceil); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_276 = __pyx_v_k; __pyx_t_6 = PyFloat_FromDouble((pow(((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_276, __pyx_pybuffernd_MAJ.diminfo[0].strides)) * __pyx_v_c), 2.0) + powf((__pyx_v_MIN * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (!__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_61 = PyTuple_New(1+1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_61, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_61, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; } __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_27 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_27)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_27) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_61 = PyTuple_New(1+1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_27); __pyx_t_27 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_61, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_61, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_277 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_4); if (unlikely((__pyx_t_277 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5640, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_delX = __pyx_t_277;
+5641: delY = math.ceil(math.sqrt((MAJ[k] * s) ** 2 + (MIN * c) ** 2))
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_ceil); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_277 = __pyx_v_k; __pyx_t_7 = PyFloat_FromDouble((pow(((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_MAJ.diminfo[0].strides)) * __pyx_v_s), 2.0) + powf((__pyx_v_MIN * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_27))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_27); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_27); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_27, function); } } if (!__pyx_t_6) { __pyx_t_25 = __Pyx_PyObject_CallOneArg(__pyx_t_27, __pyx_t_7); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_25); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_25 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_5, NULL); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_61))) { __pyx_t_27 = PyMethod_GET_SELF(__pyx_t_61); if (likely(__pyx_t_27)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61); __Pyx_INCREF(__pyx_t_27); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_61, function); } } if (!__pyx_t_27) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_61, __pyx_t_25); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_GOTREF(__pyx_t_4); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_27); __pyx_t_27 = NULL; __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_278 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_4); if (unlikely((__pyx_t_278 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 5641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_delY = __pyx_t_278;
5642:
5643:
5644:
5645: # OUTWARD
5646:
+5647: for deli in range(0, delX + 1):
__pyx_t_278 = (__pyx_v_delX + 1);
for (__pyx_t_279 = 0; __pyx_t_279 < __pyx_t_278; __pyx_t_279+=1) {
__pyx_v_deli = __pyx_t_279;
+5648: for delj in range(0, delY + 1):
__pyx_t_280 = (__pyx_v_delY + 1);
for (__pyx_t_281 = 0; __pyx_t_281 < __pyx_t_280; __pyx_t_281+=1) {
__pyx_v_delj = __pyx_t_281;
+5649: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_282 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
5650:
+5651: i, j = xo + deli, yo + delj
__pyx_t_283 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_284 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_283;
__pyx_v_j = __pyx_t_284;
+5652: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L40_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5653: if I[i, j] == 0:
__pyx_t_284 = __pyx_v_i;
__pyx_t_283 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_283, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5654: for dum in range(1):
for (__pyx_t_287 = 0; __pyx_t_287 < 1; __pyx_t_287+=1) {
__pyx_v_dum = __pyx_t_287;
5655:
+5656: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5657: if I[i - 1, j] == Io:
__pyx_t_288 = (__pyx_v_i - 1);
__pyx_t_289 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_288, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_289, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5658: I[i, j] = Io
__pyx_t_290 = __pyx_v_i;
__pyx_t_291 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_291, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5659: Col[i, j, 2] = red
__pyx_t_292 = __pyx_v_i;
__pyx_t_293 = __pyx_v_j;
__pyx_t_294 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5660: Col[i, j, 1] = green
__pyx_t_295 = __pyx_v_i;
__pyx_t_296 = __pyx_v_j;
__pyx_t_297 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5661: Col[i, j, 0] = blue
__pyx_t_298 = __pyx_v_i;
__pyx_t_299 = __pyx_v_j;
__pyx_t_300 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5662: a[k] = 1
__pyx_t_301 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_301, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5663: break
goto __pyx_L44_break;
+5664: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5665: if I[i, j - 1] == Io:
__pyx_t_302 = __pyx_v_i;
__pyx_t_303 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_303, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5666: I[i, j] = Io
__pyx_t_304 = __pyx_v_i;
__pyx_t_305 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_304, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_305, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5667: Col[i, j, 2] = red
__pyx_t_306 = __pyx_v_i;
__pyx_t_307 = __pyx_v_j;
__pyx_t_308 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5668: Col[i, j, 1] = green
__pyx_t_309 = __pyx_v_i;
__pyx_t_310 = __pyx_v_j;
__pyx_t_311 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_311, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5669: Col[i, j, 0] = blue
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = __pyx_v_j;
__pyx_t_314 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5670: a[k] = 1
__pyx_t_315 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_315, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5671: break
goto __pyx_L44_break;
5672:
+5673: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5674: if I[i, j + 1] == Io:
__pyx_t_316 = __pyx_v_i;
__pyx_t_317 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_317, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5675: I[i, j] = Io
__pyx_t_318 = __pyx_v_i;
__pyx_t_319 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_318, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_319, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5676: Col[i, j, 2] = red
__pyx_t_320 = __pyx_v_i;
__pyx_t_321 = __pyx_v_j;
__pyx_t_322 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5677: Col[i, j, 1] = green
__pyx_t_323 = __pyx_v_i;
__pyx_t_324 = __pyx_v_j;
__pyx_t_325 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5678: Col[i, j, 0] = blue
__pyx_t_326 = __pyx_v_i;
__pyx_t_327 = __pyx_v_j;
__pyx_t_328 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5679: a[k] = 1
__pyx_t_329 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_329, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5680: break
goto __pyx_L44_break;
5681:
5682:
+5683: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L44_break:;
+5684: if I[i + 1, j] == Io:
__pyx_t_330 = (__pyx_v_i + 1);
__pyx_t_331 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_330, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_331, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5685: I[i, j] = Io
__pyx_t_332 = __pyx_v_i;
__pyx_t_333 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_332, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_333, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5686: Col[i, j, 2] = red
__pyx_t_334 = __pyx_v_i;
__pyx_t_335 = __pyx_v_j;
__pyx_t_336 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5687: Col[i, j, 1] = green
__pyx_t_337 = __pyx_v_i;
__pyx_t_338 = __pyx_v_j;
__pyx_t_339 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5688: Col[i, j, 0] = blue
__pyx_t_340 = __pyx_v_i;
__pyx_t_341 = __pyx_v_j;
__pyx_t_342 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_341, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_342, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5689: a[k] = 1
__pyx_t_343 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_343, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5690: break
goto __pyx_L44_break;
5691:
5692:
+5693: i, j = xo - deli, yo - delj
__pyx_t_287 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_344 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_287;
__pyx_v_j = __pyx_t_344;
+5694: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L54_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L54_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5695: if I[i, j] == 0:
__pyx_t_344 = __pyx_v_i;
__pyx_t_287 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_344, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_287, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5696: for dum in range(1):
for (__pyx_t_345 = 0; __pyx_t_345 < 1; __pyx_t_345+=1) {
__pyx_v_dum = __pyx_t_345;
5697:
+5698: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5699: if I[i - 1, j] == Io:
__pyx_t_346 = (__pyx_v_i - 1);
__pyx_t_347 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_347, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5700: I[i, j] = Io
__pyx_t_348 = __pyx_v_i;
__pyx_t_349 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_348, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_349, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5701: Col[i, j, 2] = red
__pyx_t_350 = __pyx_v_i;
__pyx_t_351 = __pyx_v_j;
__pyx_t_352 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5702: Col[i, j, 1] = green
__pyx_t_353 = __pyx_v_i;
__pyx_t_354 = __pyx_v_j;
__pyx_t_355 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_355, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5703: Col[i, j, 0] = blue
__pyx_t_356 = __pyx_v_i;
__pyx_t_357 = __pyx_v_j;
__pyx_t_358 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_356, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_357, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_358, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5704: a[k] = 1
__pyx_t_359 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_359, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5705: break
goto __pyx_L58_break;
+5706: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5707: if I[i, j - 1] == Io:
__pyx_t_360 = __pyx_v_i;
__pyx_t_361 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_360, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_361, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5708: I[i, j] = Io
__pyx_t_362 = __pyx_v_i;
__pyx_t_363 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_362, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_363, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5709: Col[i, j, 2] = red
__pyx_t_364 = __pyx_v_i;
__pyx_t_365 = __pyx_v_j;
__pyx_t_366 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5710: Col[i, j, 1] = green
__pyx_t_367 = __pyx_v_i;
__pyx_t_368 = __pyx_v_j;
__pyx_t_369 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_369, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5711: Col[i, j, 0] = blue
__pyx_t_370 = __pyx_v_i;
__pyx_t_371 = __pyx_v_j;
__pyx_t_372 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_371, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_372, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5712: a[k] = 1
__pyx_t_373 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_373, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5713: break
goto __pyx_L58_break;
5714:
+5715: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5716: if I[i, j + 1] == Io:
__pyx_t_374 = __pyx_v_i;
__pyx_t_375 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_375, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5717: I[i, j] = Io
__pyx_t_376 = __pyx_v_i;
__pyx_t_377 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_376, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_377, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5718: Col[i, j, 2] = red
__pyx_t_378 = __pyx_v_i;
__pyx_t_379 = __pyx_v_j;
__pyx_t_380 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5719: Col[i, j, 1] = green
__pyx_t_381 = __pyx_v_i;
__pyx_t_382 = __pyx_v_j;
__pyx_t_383 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_383, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5720: Col[i, j, 0] = blue
__pyx_t_384 = __pyx_v_i;
__pyx_t_385 = __pyx_v_j;
__pyx_t_386 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_385, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_386, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5721: a[k] = 1
__pyx_t_387 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_387, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5722: break
goto __pyx_L58_break;
5723:
5724:
+5725: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L58_break:;
+5726: if I[i + 1, j] == Io:
__pyx_t_388 = (__pyx_v_i + 1);
__pyx_t_389 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_389, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5727: I[i, j] = Io
__pyx_t_390 = __pyx_v_i;
__pyx_t_391 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_390, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_391, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5728: Col[i, j, 2] = red
__pyx_t_392 = __pyx_v_i;
__pyx_t_393 = __pyx_v_j;
__pyx_t_394 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5729: Col[i, j, 1] = green
__pyx_t_395 = __pyx_v_i;
__pyx_t_396 = __pyx_v_j;
__pyx_t_397 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_397, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5730: Col[i, j, 0] = blue
__pyx_t_398 = __pyx_v_i;
__pyx_t_399 = __pyx_v_j;
__pyx_t_400 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_398, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_399, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_400, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5731: a[k] = 1
__pyx_t_401 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_401, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5732: break
goto __pyx_L58_break;
5733:
5734:
+5735: for deli in range(0, -delX - 1, -1):
__pyx_t_278 = ((-__pyx_v_delX) - 1);
for (__pyx_t_279 = 0; __pyx_t_279 > __pyx_t_278; __pyx_t_279-=1) {
__pyx_v_deli = __pyx_t_279;
+5736: for delj in range(0, delY + 1):
__pyx_t_280 = (__pyx_v_delY + 1);
for (__pyx_t_281 = 0; __pyx_t_281 < __pyx_t_280; __pyx_t_281+=1) {
__pyx_v_delj = __pyx_t_281;
+5737: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_345 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_345, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
5738:
+5739: i, j = xo + deli, yo + delj
__pyx_t_402 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_403 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_402;
__pyx_v_j = __pyx_t_403;
+5740: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L73_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L73_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5741: if I[i, j] == 0:
__pyx_t_403 = __pyx_v_i;
__pyx_t_402 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_403, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_402, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5742: for dum in range(1):
for (__pyx_t_404 = 0; __pyx_t_404 < 1; __pyx_t_404+=1) {
__pyx_v_dum = __pyx_t_404;
5743:
+5744: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5745: if I[i - 1, j] == Io:
__pyx_t_405 = (__pyx_v_i - 1);
__pyx_t_406 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_405, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_406, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5746: I[i, j] = Io
__pyx_t_407 = __pyx_v_i;
__pyx_t_408 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_407, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_408, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5747: Col[i, j, 2] = red
__pyx_t_409 = __pyx_v_i;
__pyx_t_410 = __pyx_v_j;
__pyx_t_411 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_409, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_410, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_411, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5748: Col[i, j, 1] = green
__pyx_t_412 = __pyx_v_i;
__pyx_t_413 = __pyx_v_j;
__pyx_t_414 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_412, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_413, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_414, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5749: Col[i, j, 0] = blue
__pyx_t_415 = __pyx_v_i;
__pyx_t_416 = __pyx_v_j;
__pyx_t_417 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_415, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_416, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_417, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5750: a[k] = 1
__pyx_t_418 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_418, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5751: break
goto __pyx_L77_break;
+5752: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5753: if I[i, j - 1] == Io:
__pyx_t_419 = __pyx_v_i;
__pyx_t_420 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_419, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_420, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5754: I[i, j] = Io
__pyx_t_421 = __pyx_v_i;
__pyx_t_422 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_421, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_422, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5755: Col[i, j, 2] = red
__pyx_t_423 = __pyx_v_i;
__pyx_t_424 = __pyx_v_j;
__pyx_t_425 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_425, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5756: Col[i, j, 1] = green
__pyx_t_426 = __pyx_v_i;
__pyx_t_427 = __pyx_v_j;
__pyx_t_428 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_426, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_427, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_428, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5757: Col[i, j, 0] = blue
__pyx_t_429 = __pyx_v_i;
__pyx_t_430 = __pyx_v_j;
__pyx_t_431 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_429, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_430, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_431, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5758: a[k] = 1
__pyx_t_432 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_432, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5759: break
goto __pyx_L77_break;
5760:
+5761: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5762: if I[i, j + 1] == Io:
__pyx_t_433 = __pyx_v_i;
__pyx_t_434 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_433, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_434, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5763: I[i, j] = Io
__pyx_t_435 = __pyx_v_i;
__pyx_t_436 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_435, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_436, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5764: Col[i, j, 2] = red
__pyx_t_437 = __pyx_v_i;
__pyx_t_438 = __pyx_v_j;
__pyx_t_439 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_439, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5765: Col[i, j, 1] = green
__pyx_t_440 = __pyx_v_i;
__pyx_t_441 = __pyx_v_j;
__pyx_t_442 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_440, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5766: Col[i, j, 0] = blue
__pyx_t_443 = __pyx_v_i;
__pyx_t_444 = __pyx_v_j;
__pyx_t_445 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_443, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_444, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_445, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5767: a[k] = 1
__pyx_t_446 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_446, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5768: break
goto __pyx_L77_break;
5769:
5770:
+5771: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L77_break:;
+5772: if I[i + 1, j] == Io:
__pyx_t_447 = (__pyx_v_i + 1);
__pyx_t_448 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_447, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_448, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5773: I[i, j] = Io
__pyx_t_449 = __pyx_v_i;
__pyx_t_450 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_449, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_450, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5774: Col[i, j, 2] = red
__pyx_t_451 = __pyx_v_i;
__pyx_t_452 = __pyx_v_j;
__pyx_t_453 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_451, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_452, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_453, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5775: Col[i, j, 1] = green
__pyx_t_454 = __pyx_v_i;
__pyx_t_455 = __pyx_v_j;
__pyx_t_456 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_454, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5776: Col[i, j, 0] = blue
__pyx_t_457 = __pyx_v_i;
__pyx_t_458 = __pyx_v_j;
__pyx_t_459 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_457, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_458, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_459, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5777: a[k] = 1
__pyx_t_460 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_460, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5778: break
goto __pyx_L77_break;
5779:
5780:
+5781: i, j = xo - deli, yo - delj
__pyx_t_404 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_461 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_404;
__pyx_v_j = __pyx_t_461;
+5782: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L87_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L87_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5783: if I[i, j] == 0:
__pyx_t_461 = __pyx_v_i;
__pyx_t_404 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_461, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_404, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5784: for dum in range(1):
for (__pyx_t_462 = 0; __pyx_t_462 < 1; __pyx_t_462+=1) {
__pyx_v_dum = __pyx_t_462;
5785:
+5786: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5787: if I[i - 1, j] == Io:
__pyx_t_463 = (__pyx_v_i - 1);
__pyx_t_464 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_463, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_464, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5788: I[i, j] = Io
__pyx_t_465 = __pyx_v_i;
__pyx_t_466 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_465, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_466, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5789: Col[i, j, 2] = red
__pyx_t_467 = __pyx_v_i;
__pyx_t_468 = __pyx_v_j;
__pyx_t_469 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_467, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_468, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_469, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5790: Col[i, j, 1] = green
__pyx_t_470 = __pyx_v_i;
__pyx_t_471 = __pyx_v_j;
__pyx_t_472 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_470, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_471, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_472, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5791: Col[i, j, 0] = blue
__pyx_t_473 = __pyx_v_i;
__pyx_t_474 = __pyx_v_j;
__pyx_t_475 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_473, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_474, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_475, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5792: a[k] = 1
__pyx_t_476 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_476, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5793: break
goto __pyx_L91_break;
+5794: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5795: if I[i, j - 1] == Io:
__pyx_t_477 = __pyx_v_i;
__pyx_t_478 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_477, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_478, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5796: I[i, j] = Io
__pyx_t_479 = __pyx_v_i;
__pyx_t_480 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_479, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_480, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5797: Col[i, j, 2] = red
__pyx_t_481 = __pyx_v_i;
__pyx_t_482 = __pyx_v_j;
__pyx_t_483 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_481, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_482, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_483, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5798: Col[i, j, 1] = green
__pyx_t_484 = __pyx_v_i;
__pyx_t_485 = __pyx_v_j;
__pyx_t_486 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_484, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_485, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_486, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5799: Col[i, j, 0] = blue
__pyx_t_487 = __pyx_v_i;
__pyx_t_488 = __pyx_v_j;
__pyx_t_489 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_487, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_488, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_489, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5800: a[k] = 1
__pyx_t_490 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_490, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5801: break
goto __pyx_L91_break;
5802:
+5803: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5804: if I[i, j + 1] == Io:
__pyx_t_491 = __pyx_v_i;
__pyx_t_492 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_491, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_492, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5805: I[i, j] = Io
__pyx_t_493 = __pyx_v_i;
__pyx_t_494 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_493, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_494, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5806: Col[i, j, 2] = red
__pyx_t_495 = __pyx_v_i;
__pyx_t_496 = __pyx_v_j;
__pyx_t_497 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_495, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_496, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_497, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5807: Col[i, j, 1] = green
__pyx_t_498 = __pyx_v_i;
__pyx_t_499 = __pyx_v_j;
__pyx_t_500 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_498, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_499, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_500, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5808: Col[i, j, 0] = blue
__pyx_t_501 = __pyx_v_i;
__pyx_t_502 = __pyx_v_j;
__pyx_t_503 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_501, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_502, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_503, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5809: a[k] = 1
__pyx_t_504 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_504, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5810: break
goto __pyx_L91_break;
5811:
5812:
+5813: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L91_break:;
+5814: if I[i + 1, j] == Io:
__pyx_t_505 = (__pyx_v_i + 1);
__pyx_t_506 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_505, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_506, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5815: I[i, j] = Io
__pyx_t_507 = __pyx_v_i;
__pyx_t_508 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_507, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_508, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5816: Col[i, j, 2] = red
__pyx_t_509 = __pyx_v_i;
__pyx_t_510 = __pyx_v_j;
__pyx_t_511 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_509, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_510, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_511, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5817: Col[i, j, 1] = green
__pyx_t_512 = __pyx_v_i;
__pyx_t_513 = __pyx_v_j;
__pyx_t_514 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_512, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_513, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_514, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5818: Col[i, j, 0] = blue
__pyx_t_515 = __pyx_v_i;
__pyx_t_516 = __pyx_v_j;
__pyx_t_517 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_515, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_516, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_517, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5819: a[k] = 1
__pyx_t_518 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_518, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5820: break
goto __pyx_L91_break;
5821:
5822:
5823:
5824: # INWARD
5825:
+5826: for deli in range(delX, -1, -1):
for (__pyx_t_278 = __pyx_v_delX; __pyx_t_278 > -1L; __pyx_t_278-=1) {
__pyx_v_deli = __pyx_t_278;
+5827: for delj in range(0, delY + 1):
__pyx_t_279 = (__pyx_v_delY + 1);
for (__pyx_t_280 = 0; __pyx_t_280 < __pyx_t_279; __pyx_t_280+=1) {
__pyx_v_delj = __pyx_t_280;
+5828: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_281 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_281, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
5829:
+5830: i, j = xo + deli, yo + delj
__pyx_t_462 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_519 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_462;
__pyx_v_j = __pyx_t_519;
+5831: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L106_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L106_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5832: if I[i, j] == 0:
__pyx_t_519 = __pyx_v_i;
__pyx_t_462 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_519, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_462, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5833: for dum in range(1):
for (__pyx_t_520 = 0; __pyx_t_520 < 1; __pyx_t_520+=1) {
__pyx_v_dum = __pyx_t_520;
5834:
+5835: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5836: if I[i - 1, j] == Io:
__pyx_t_521 = (__pyx_v_i - 1);
__pyx_t_522 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_521, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_522, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5837: I[i, j] = Io
__pyx_t_523 = __pyx_v_i;
__pyx_t_524 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_523, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_524, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5838: Col[i, j, 2] = red
__pyx_t_525 = __pyx_v_i;
__pyx_t_526 = __pyx_v_j;
__pyx_t_527 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_525, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_526, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_527, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5839: Col[i, j, 1] = green
__pyx_t_528 = __pyx_v_i;
__pyx_t_529 = __pyx_v_j;
__pyx_t_530 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_528, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_529, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_530, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5840: Col[i, j, 0] = blue
__pyx_t_531 = __pyx_v_i;
__pyx_t_532 = __pyx_v_j;
__pyx_t_533 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_531, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_532, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_533, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5841: a[k] = 1
__pyx_t_534 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_534, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5842: break
goto __pyx_L110_break;
+5843: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5844: if I[i, j - 1] == Io:
__pyx_t_535 = __pyx_v_i;
__pyx_t_536 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_535, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_536, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5845: I[i, j] = Io
__pyx_t_537 = __pyx_v_i;
__pyx_t_538 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_537, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_538, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5846: Col[i, j, 2] = red
__pyx_t_539 = __pyx_v_i;
__pyx_t_540 = __pyx_v_j;
__pyx_t_541 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_539, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_540, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_541, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5847: Col[i, j, 1] = green
__pyx_t_542 = __pyx_v_i;
__pyx_t_543 = __pyx_v_j;
__pyx_t_544 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_542, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_543, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_544, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5848: Col[i, j, 0] = blue
__pyx_t_545 = __pyx_v_i;
__pyx_t_546 = __pyx_v_j;
__pyx_t_547 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_545, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_546, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_547, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5849: a[k] = 1
__pyx_t_548 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_548, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5850: break
goto __pyx_L110_break;
5851:
+5852: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5853: if I[i, j + 1] == Io:
__pyx_t_549 = __pyx_v_i;
__pyx_t_550 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_549, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_550, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5854: I[i, j] = Io
__pyx_t_551 = __pyx_v_i;
__pyx_t_552 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_551, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_552, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5855: Col[i, j, 2] = red
__pyx_t_553 = __pyx_v_i;
__pyx_t_554 = __pyx_v_j;
__pyx_t_555 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_553, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_554, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_555, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5856: Col[i, j, 1] = green
__pyx_t_556 = __pyx_v_i;
__pyx_t_557 = __pyx_v_j;
__pyx_t_558 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_556, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_557, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_558, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5857: Col[i, j, 0] = blue
__pyx_t_559 = __pyx_v_i;
__pyx_t_560 = __pyx_v_j;
__pyx_t_561 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_559, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_560, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_561, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5858: a[k] = 1
__pyx_t_562 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_562, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5859: break
goto __pyx_L110_break;
5860:
5861:
+5862: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L110_break:;
+5863: if I[i + 1, j] == Io:
__pyx_t_563 = (__pyx_v_i + 1);
__pyx_t_564 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_563, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_564, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5864: I[i, j] = Io
__pyx_t_565 = __pyx_v_i;
__pyx_t_566 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_565, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_566, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5865: Col[i, j, 2] = red
__pyx_t_567 = __pyx_v_i;
__pyx_t_568 = __pyx_v_j;
__pyx_t_569 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_567, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_568, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_569, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5866: Col[i, j, 1] = green
__pyx_t_570 = __pyx_v_i;
__pyx_t_571 = __pyx_v_j;
__pyx_t_572 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_570, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_571, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_572, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5867: Col[i, j, 0] = blue
__pyx_t_573 = __pyx_v_i;
__pyx_t_574 = __pyx_v_j;
__pyx_t_575 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_573, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_574, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_575, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5868: a[k] = 1
__pyx_t_576 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_576, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5869: break
goto __pyx_L110_break;
5870:
5871:
+5872: i, j = xo - deli, yo - delj
__pyx_t_520 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_577 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_520;
__pyx_v_j = __pyx_t_577;
+5873: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L120_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L120_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5874: if I[i, j] == 0:
__pyx_t_577 = __pyx_v_i;
__pyx_t_520 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_577, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_520, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5875: for dum in range(1):
for (__pyx_t_578 = 0; __pyx_t_578 < 1; __pyx_t_578+=1) {
__pyx_v_dum = __pyx_t_578;
5876:
+5877: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5878: if I[i - 1, j] == Io:
__pyx_t_579 = (__pyx_v_i - 1);
__pyx_t_580 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_579, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_580, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5879: I[i, j] = Io
__pyx_t_581 = __pyx_v_i;
__pyx_t_582 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_581, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_582, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5880: Col[i, j, 2] = red
__pyx_t_583 = __pyx_v_i;
__pyx_t_584 = __pyx_v_j;
__pyx_t_585 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_583, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_584, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_585, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5881: Col[i, j, 1] = green
__pyx_t_586 = __pyx_v_i;
__pyx_t_587 = __pyx_v_j;
__pyx_t_588 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_586, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_587, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_588, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5882: Col[i, j, 0] = blue
__pyx_t_589 = __pyx_v_i;
__pyx_t_590 = __pyx_v_j;
__pyx_t_591 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_589, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_590, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_591, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5883: a[k] = 1
__pyx_t_592 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_592, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5884: break
goto __pyx_L124_break;
+5885: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5886: if I[i, j - 1] == Io:
__pyx_t_593 = __pyx_v_i;
__pyx_t_594 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_593, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_594, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5887: I[i, j] = Io
__pyx_t_595 = __pyx_v_i;
__pyx_t_596 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_595, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_596, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5888: Col[i, j, 2] = red
__pyx_t_597 = __pyx_v_i;
__pyx_t_598 = __pyx_v_j;
__pyx_t_599 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_597, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_598, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_599, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5889: Col[i, j, 1] = green
__pyx_t_600 = __pyx_v_i;
__pyx_t_601 = __pyx_v_j;
__pyx_t_602 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_600, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_601, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_602, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5890: Col[i, j, 0] = blue
__pyx_t_603 = __pyx_v_i;
__pyx_t_604 = __pyx_v_j;
__pyx_t_605 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_603, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_604, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_605, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5891: a[k] = 1
__pyx_t_606 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_606, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5892: break
goto __pyx_L124_break;
5893:
+5894: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5895: if I[i, j + 1] == Io:
__pyx_t_607 = __pyx_v_i;
__pyx_t_608 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_607, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_608, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5896: I[i, j] = Io
__pyx_t_609 = __pyx_v_i;
__pyx_t_610 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_609, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_610, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5897: Col[i, j, 2] = red
__pyx_t_611 = __pyx_v_i;
__pyx_t_612 = __pyx_v_j;
__pyx_t_613 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_611, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_612, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_613, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5898: Col[i, j, 1] = green
__pyx_t_614 = __pyx_v_i;
__pyx_t_615 = __pyx_v_j;
__pyx_t_616 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_614, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_615, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_616, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5899: Col[i, j, 0] = blue
__pyx_t_617 = __pyx_v_i;
__pyx_t_618 = __pyx_v_j;
__pyx_t_619 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_617, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_618, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_619, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5900: a[k] = 1
__pyx_t_620 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_620, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5901: break
goto __pyx_L124_break;
5902:
5903:
+5904: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L124_break:;
+5905: if I[i + 1, j] == Io:
__pyx_t_621 = (__pyx_v_i + 1);
__pyx_t_622 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_621, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_622, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5906: I[i, j] = Io
__pyx_t_623 = __pyx_v_i;
__pyx_t_624 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_623, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_624, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5907: Col[i, j, 2] = red
__pyx_t_625 = __pyx_v_i;
__pyx_t_626 = __pyx_v_j;
__pyx_t_627 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_625, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_626, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_627, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5908: Col[i, j, 1] = green
__pyx_t_628 = __pyx_v_i;
__pyx_t_629 = __pyx_v_j;
__pyx_t_630 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_628, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_629, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_630, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5909: Col[i, j, 0] = blue
__pyx_t_631 = __pyx_v_i;
__pyx_t_632 = __pyx_v_j;
__pyx_t_633 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_631, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_632, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_633, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5910: a[k] = 1
__pyx_t_634 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_634, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5911: break
goto __pyx_L124_break;
5912:
5913:
+5914: for deli in range(-delX , 0):
for (__pyx_t_278 = (-__pyx_v_delX); __pyx_t_278 < 0; __pyx_t_278+=1) {
__pyx_v_deli = __pyx_t_278;
+5915: for delj in range(0, delY + 1):
__pyx_t_279 = (__pyx_v_delY + 1);
for (__pyx_t_280 = 0; __pyx_t_280 < __pyx_t_279; __pyx_t_280+=1) {
__pyx_v_delj = __pyx_t_280;
+5916: if ((deli * c - delj * s) / MAJ[k]) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_578 = __pyx_v_k;
__pyx_t_23 = (((pow((((__pyx_t_5numpy_float64_t)((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s))) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_578, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
5917:
+5918: i, j = xo + deli, yo + delj
__pyx_t_635 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_636 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_635;
__pyx_v_j = __pyx_t_636;
+5919: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L139_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L139_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5920: if I[i, j] == 0:
__pyx_t_636 = __pyx_v_i;
__pyx_t_635 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_636, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_635, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5921: for dum in range(1):
for (__pyx_t_637 = 0; __pyx_t_637 < 1; __pyx_t_637+=1) {
__pyx_v_dum = __pyx_t_637;
5922:
+5923: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5924: if I[i - 1, j] == Io:
__pyx_t_638 = (__pyx_v_i - 1);
__pyx_t_639 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_638, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_639, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5925: I[i, j] = Io
__pyx_t_640 = __pyx_v_i;
__pyx_t_641 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_640, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_641, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5926: Col[i, j, 2] = red
__pyx_t_642 = __pyx_v_i;
__pyx_t_643 = __pyx_v_j;
__pyx_t_644 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_642, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_643, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_644, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5927: Col[i, j, 1] = green
__pyx_t_645 = __pyx_v_i;
__pyx_t_646 = __pyx_v_j;
__pyx_t_647 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_645, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_646, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_647, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5928: Col[i, j, 0] = blue
__pyx_t_648 = __pyx_v_i;
__pyx_t_649 = __pyx_v_j;
__pyx_t_650 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_648, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_649, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_650, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5929: a[k] = 1
__pyx_t_651 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_651, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5930: break
goto __pyx_L143_break;
+5931: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5932: if I[i, j - 1] == Io:
__pyx_t_652 = __pyx_v_i;
__pyx_t_653 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_652, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_653, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5933: I[i, j] = Io
__pyx_t_654 = __pyx_v_i;
__pyx_t_655 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_654, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_655, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5934: Col[i, j, 2] = red
__pyx_t_656 = __pyx_v_i;
__pyx_t_657 = __pyx_v_j;
__pyx_t_658 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_656, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_657, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_658, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5935: Col[i, j, 1] = green
__pyx_t_659 = __pyx_v_i;
__pyx_t_660 = __pyx_v_j;
__pyx_t_661 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_659, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_660, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_661, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5936: Col[i, j, 0] = blue
__pyx_t_662 = __pyx_v_i;
__pyx_t_663 = __pyx_v_j;
__pyx_t_664 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_662, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_663, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_664, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5937: a[k] = 1
__pyx_t_665 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_665, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5938: break
goto __pyx_L143_break;
5939:
+5940: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5941: if I[i, j + 1] == Io:
__pyx_t_666 = __pyx_v_i;
__pyx_t_667 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_666, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_667, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5942: I[i, j] = Io
__pyx_t_668 = __pyx_v_i;
__pyx_t_669 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_668, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_669, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5943: Col[i, j, 2] = red
__pyx_t_670 = __pyx_v_i;
__pyx_t_671 = __pyx_v_j;
__pyx_t_672 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_670, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_671, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_672, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5944: Col[i, j, 1] = green
__pyx_t_673 = __pyx_v_i;
__pyx_t_674 = __pyx_v_j;
__pyx_t_675 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_673, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_674, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_675, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5945: Col[i, j, 0] = blue
__pyx_t_676 = __pyx_v_i;
__pyx_t_677 = __pyx_v_j;
__pyx_t_678 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_676, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_677, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_678, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5946: a[k] = 1
__pyx_t_679 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_679, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5947: break
goto __pyx_L143_break;
5948:
5949:
+5950: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L143_break:;
+5951: if I[i + 1, j] == Io:
__pyx_t_680 = (__pyx_v_i + 1);
__pyx_t_681 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_680, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_681, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5952: I[i, j] = Io
__pyx_t_682 = __pyx_v_i;
__pyx_t_683 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_682, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_683, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5953: Col[i, j, 2] = red
__pyx_t_684 = __pyx_v_i;
__pyx_t_685 = __pyx_v_j;
__pyx_t_686 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_684, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_685, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_686, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5954: Col[i, j, 1] = green
__pyx_t_687 = __pyx_v_i;
__pyx_t_688 = __pyx_v_j;
__pyx_t_689 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_687, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_688, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_689, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5955: Col[i, j, 0] = blue
__pyx_t_690 = __pyx_v_i;
__pyx_t_691 = __pyx_v_j;
__pyx_t_692 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_690, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_691, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_692, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5956: a[k] = 1
__pyx_t_693 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_693, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5957: break
goto __pyx_L143_break;
5958:
5959:
+5960: i, j = xo - deli, yo - delj
__pyx_t_637 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_694 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_637;
__pyx_v_j = __pyx_t_694;
+5961: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_285 = (0 <= __pyx_v_i);
if (__pyx_t_285) {
__pyx_t_285 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_286 = (__pyx_t_285 != 0);
if (__pyx_t_286) {
} else {
__pyx_t_23 = __pyx_t_286;
goto __pyx_L153_bool_binop_done;
}
__pyx_t_286 = (0 <= __pyx_v_j);
if (__pyx_t_286) {
__pyx_t_286 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_285 = (__pyx_t_286 != 0);
__pyx_t_23 = __pyx_t_285;
__pyx_L153_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+5962: if I[i, j] == 0:
__pyx_t_694 = __pyx_v_i;
__pyx_t_637 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_694, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_637, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5963: for dum in range(1):
for (__pyx_t_695 = 0; __pyx_t_695 < 1; __pyx_t_695+=1) {
__pyx_v_dum = __pyx_t_695;
5964:
+5965: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5966: if I[i - 1, j] == Io:
__pyx_t_696 = (__pyx_v_i - 1);
__pyx_t_697 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_696, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_697, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5967: I[i, j] = Io
__pyx_t_698 = __pyx_v_i;
__pyx_t_699 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_698, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_699, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5968: Col[i, j, 2] = red
__pyx_t_700 = __pyx_v_i;
__pyx_t_701 = __pyx_v_j;
__pyx_t_702 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_700, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_701, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_702, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5969: Col[i, j, 1] = green
__pyx_t_703 = __pyx_v_i;
__pyx_t_704 = __pyx_v_j;
__pyx_t_705 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_703, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_704, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_705, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5970: Col[i, j, 0] = blue
__pyx_t_706 = __pyx_v_i;
__pyx_t_707 = __pyx_v_j;
__pyx_t_708 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_706, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_707, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_708, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5971: a[k] = 1
__pyx_t_709 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_709, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5972: break
goto __pyx_L157_break;
+5973: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+5974: if I[i, j - 1] == Io:
__pyx_t_710 = __pyx_v_i;
__pyx_t_711 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_710, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_711, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5975: I[i, j] = Io
__pyx_t_712 = __pyx_v_i;
__pyx_t_713 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_712, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_713, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5976: Col[i, j, 2] = red
__pyx_t_714 = __pyx_v_i;
__pyx_t_715 = __pyx_v_j;
__pyx_t_716 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_714, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_715, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_716, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5977: Col[i, j, 1] = green
__pyx_t_717 = __pyx_v_i;
__pyx_t_718 = __pyx_v_j;
__pyx_t_719 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_717, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_718, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_719, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5978: Col[i, j, 0] = blue
__pyx_t_720 = __pyx_v_i;
__pyx_t_721 = __pyx_v_j;
__pyx_t_722 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_720, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_721, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_722, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5979: a[k] = 1
__pyx_t_723 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_723, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5980: break
goto __pyx_L157_break;
5981:
+5982: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+5983: if I[i, j + 1] == Io:
__pyx_t_724 = __pyx_v_i;
__pyx_t_725 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_724, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_725, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5984: I[i, j] = Io
__pyx_t_726 = __pyx_v_i;
__pyx_t_727 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_726, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_727, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5985: Col[i, j, 2] = red
__pyx_t_728 = __pyx_v_i;
__pyx_t_729 = __pyx_v_j;
__pyx_t_730 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_728, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_729, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_730, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5986: Col[i, j, 1] = green
__pyx_t_731 = __pyx_v_i;
__pyx_t_732 = __pyx_v_j;
__pyx_t_733 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_731, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_732, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_733, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5987: Col[i, j, 0] = blue
__pyx_t_734 = __pyx_v_i;
__pyx_t_735 = __pyx_v_j;
__pyx_t_736 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_734, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_735, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_736, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5988: a[k] = 1
__pyx_t_737 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_737, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5989: break
goto __pyx_L157_break;
5990:
5991:
+5992: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L157_break:;
+5993: if I[i + 1, j] == Io:
__pyx_t_738 = (__pyx_v_i + 1);
__pyx_t_739 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_738, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_739, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+5994: I[i, j] = Io
__pyx_t_740 = __pyx_v_i;
__pyx_t_741 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_740, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_741, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+5995: Col[i, j, 2] = red
__pyx_t_742 = __pyx_v_i;
__pyx_t_743 = __pyx_v_j;
__pyx_t_744 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_742, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_743, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_744, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+5996: Col[i, j, 1] = green
__pyx_t_745 = __pyx_v_i;
__pyx_t_746 = __pyx_v_j;
__pyx_t_747 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_745, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_746, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_747, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+5997: Col[i, j, 0] = blue
__pyx_t_748 = __pyx_v_i;
__pyx_t_749 = __pyx_v_j;
__pyx_t_750 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_748, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_749, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_750, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+5998: a[k] = 1
__pyx_t_751 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_751, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+5999: break
goto __pyx_L157_break;
6000:
6001:
6002:
6003:
+6004: if a[k] == 0:
__pyx_t_278 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_278, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6005: xmin = max(0, xo - delX)
__pyx_t_279 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_752 = 0;
if (((__pyx_t_279 > __pyx_t_752) != 0)) {
__pyx_t_280 = __pyx_t_279;
} else {
__pyx_t_280 = __pyx_t_752;
}
__pyx_v_xmin = __pyx_t_280;
+6006: xmax = min(m - 1, xo + delX)
__pyx_t_280 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_279 = (__pyx_v_m - 1);
if (((__pyx_t_280 < __pyx_t_279) != 0)) {
__pyx_t_695 = __pyx_t_280;
} else {
__pyx_t_695 = __pyx_t_279;
}
__pyx_v_xmax = __pyx_t_695;
+6007: ymin = max(0, yo - delY)
__pyx_t_695 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_752 = 0;
if (((__pyx_t_695 > __pyx_t_752) != 0)) {
__pyx_t_280 = __pyx_t_695;
} else {
__pyx_t_280 = __pyx_t_752;
}
__pyx_v_ymin = __pyx_t_280;
+6008: ymax = min(n - 1, yo + delY)
__pyx_t_280 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_695 = (__pyx_v_n - 1);
if (((__pyx_t_280 < __pyx_t_695) != 0)) {
__pyx_t_279 = __pyx_t_280;
} else {
__pyx_t_279 = __pyx_t_695;
}
__pyx_v_ymax = __pyx_t_279;
+6009: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_279 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
6010:
+6011: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
}
+6012: if asy == 0:
__pyx_t_23 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6013: break
goto __pyx_L12_break;
6014: else:
+6015: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_61 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_61); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6015, __pyx_L1_error)
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_61, __pyx_n_s_all); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
__pyx_t_61 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_61 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_61)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_61);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
}
}
if (__pyx_t_61) {
__pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_61); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6015, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0;
} else {
__pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6015, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_4);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_EqObjC(__pyx_t_4, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6015, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
__pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 6015, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if (__pyx_t_23) {
/* … */
}
+6016: break
goto __pyx_L12_break;
6017: else:
+6018: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_3 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 6018, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+6019: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_61 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_25 = PyTuple_New(2); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_61); PyTuple_SET_ITEM(__pyx_t_25, 1, __pyx_t_61); __pyx_t_5 = 0; __pyx_t_61 = 0; __pyx_t_61 = PyTuple_New(1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = PyDict_New(); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_25, __pyx_n_s_dtype, __pyx_t_27) < 0) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_61, __pyx_t_25); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 6019, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (!(likely(((__pyx_t_27) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_27, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6019, __pyx_L1_error) __pyx_t_8 = ((PyArrayObject *)__pyx_t_27); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 6019, __pyx_L1_error) } __pyx_t_8 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_27)); __pyx_t_27 = 0;
+6020: a = np.ones(p, dtype=np.int8)
__pyx_t_27 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_27, __pyx_n_s_ones); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_61 = PyTuple_New(1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_27); __pyx_t_27 = 0; __pyx_t_27 = PyDict_New(); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_27, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_61, __pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6020, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6020, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 6020, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+6021: MAJ = np.zeros(p, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_27 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_61 = PyTuple_New(1); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_61, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_4) < 0) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_27, __pyx_t_61, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6021, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_27); __pyx_t_27 = 0; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6021, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_4); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_v_MAJ, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 6021, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_MAJ, ((PyArrayObject *)__pyx_t_4)); __pyx_t_4 = 0;
+6022: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_centroids); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_27 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_27)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_27); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_61))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_61); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_61, function); __pyx_t_26 = 1; } } __pyx_t_6 = PyTuple_New(4+__pyx_t_26); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_26, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_26, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_27); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_26, __pyx_t_27); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_6, 3+__pyx_t_26, __pyx_t_25); __pyx_t_5 = 0; __pyx_t_27 = 0; __pyx_t_25 = 0; __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_61, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { PyObject* sequence = __pyx_t_4; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 6022, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_61 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_61 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_61); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_61 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } else { Py_ssize_t index = -1; __pyx_t_25 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6022, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_24 = Py_TYPE(__pyx_t_25)->tp_iternext; index = 0; __pyx_t_61 = __pyx_t_24(__pyx_t_25); if (unlikely(!__pyx_t_61)) goto __pyx_L169_unpacking_failed; __Pyx_GOTREF(__pyx_t_61); index = 1; __pyx_t_6 = __pyx_t_24(__pyx_t_25); if (unlikely(!__pyx_t_6)) goto __pyx_L169_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_24(__pyx_t_25), 2) < 0) __PYX_ERR(0, 6022, __pyx_L1_error) __pyx_t_24 = NULL; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; goto __pyx_L170_unpacking_done; __pyx_L169_unpacking_failed:; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_24 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 6022, __pyx_L1_error) __pyx_L170_unpacking_done:; } if (!(likely(((__pyx_t_61) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_61, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6022, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6022, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_61); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 6022, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_61)); __pyx_t_61 = 0; __pyx_t_12 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_3 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_3 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_3 < 0)) __PYX_ERR(0, 6022, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+6023: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
6024:
+6025: toc = time.time()
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6025, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_61 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_61)) __PYX_ERR(0, 6025, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_61); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_61))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_61); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_61); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_61, function); } } if (__pyx_t_6) { __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_61, __pyx_t_6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6025, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_4 = __Pyx_PyObject_CallNoArg(__pyx_t_61); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6025, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_61); __pyx_t_61 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_4); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6025, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_v_toc = __pyx_t_22;
+6026: obj.exetime = toc - tic
__pyx_t_4 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 6026, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_4) < 0) __PYX_ERR(0, 6026, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
+6027: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 6027, __pyx_L1_error)
+6028: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 6028, __pyx_L1_error)
+6029: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 6029, __pyx_L1_error)
+6030: obj.RVal = Rval
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_RVal, ((PyObject *)__pyx_v_Rval)) < 0) __PYX_ERR(0, 6030, __pyx_L1_error)
+6031: obj.adotValues = adotVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_adotValues, ((PyObject *)__pyx_v_adotVal)) < 0) __PYX_ERR(0, 6031, __pyx_L1_error)
+6032: obj.ThetaValues = Theta
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_ThetaValues, ((PyObject *)__pyx_v_Theta)) < 0) __PYX_ERR(0, 6032, __pyx_L1_error)
+6033: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 6033, __pyx_L1_error)
+6034: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
6035:
6036:
+6037: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_45Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_45Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_45Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_45Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_44Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_44Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
float __pyx_v_R;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_Min;
float __pyx_v_Maj;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot", 0);
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_48);
__Pyx_XDECREF(__pyx_t_168);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__55 = PyTuple_Pack(62, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_R, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_tmp, __pyx_n_s_Min, __pyx_n_s_Maj, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_MAJ, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax); if (unlikely(!__pyx_tuple__55)) __PYX_ERR(0, 6037, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__55);
__Pyx_GIVEREF(__pyx_tuple__55);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_45Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6037, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_5, __pyx_t_2) < 0) __PYX_ERR(0, 6037, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__56 = (PyObject*)__Pyx_PyCode_New(1, 0, 62, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__55, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_5, 6037, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__56)) __PYX_ERR(0, 6037, __pyx_L1_error)
6038: # Grabbing data from the input object
+6039: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6039, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6039, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+6040: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6040, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6040, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+6041: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6041, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6041, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+6042: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6042, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6042, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+6043: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6043, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6043, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+6044: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+6045: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6045, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6045, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+6046: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6046, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6046, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+6047: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6047, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6047, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+6048: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6048, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+6049: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6049, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+6050: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6050, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+6051: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6051, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+6052: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6052, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
6053:
6054: # Declaring other variables
6055: cdef double tic, toc
6056: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, MAJceil, MINceil, Iter
6057: cdef float dt, f, t, tmp, Min, Maj, red, green, blue
+6058: cdef np.ndarray[np.int64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6058, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6058, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6058, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_9 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6059: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6059, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6059, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6059, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6060: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6060, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6060, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6060, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6061: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6061, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6061, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6061, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_12 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6062: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6062, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6062, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6062, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6063: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6063, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6063, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6063, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6064: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6064, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6064, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6064, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6065: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6065, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6065, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6065, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_16 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6066: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6066, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6066, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6066, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_17 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6067: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6067, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6067, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6067, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6067, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6067, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
+6068: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6068, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6068, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6068, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+6069: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6069, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (__pyx_t_6) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6069, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_8 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6069, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6069, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_tic = __pyx_t_21;
6070:
+6071: t = 0
__pyx_v_t = 0.0;
+6072: p = 0
__pyx_v_p = 0;
+6073: dp = 0
__pyx_v_dp = 0;
+6074: countim = 0
__pyx_v_countim = 0;
+6075: nnz = 0
__pyx_v_nnz = 0;
+6076: Iter = 1
__pyx_v_Iter = 1;
+6077: while nnz < MN:
while (1) {
__pyx_t_22 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_22) break;
+6078: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+6079: dt = 1.0 / Gt(t)
__pyx_t_5 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6079, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_8, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6079, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6079, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+6080: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_5 = __pyx_v_Ndot; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_23 = PyTuple_New(1+1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_23, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_23, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Multiply(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyNumber_Multiply(__pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_8); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6080, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_v_dp = __pyx_t_2;
+6081: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+6082: if pdelNxy == []:
__pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6082, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6082, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_22 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_22 < 0)) __PYX_ERR(0, 6082, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_22) { /* … */ goto __pyx_L5; }
+6083: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L7_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6084: count = 0
__pyx_v_count = 0;
+6085: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+6086: xt = np.random.randint(0, m - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_23 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_7 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_23) { __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_23); __pyx_t_23 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_25, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6086, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6086, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+6087: yt = np.random.randint(0, n - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_25 = 1; } } __pyx_t_23 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_25, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_23, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6087, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6087, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+6088: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_26 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_26, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
}
+6089: I[xt, yt] = p + count + 1
__pyx_t_27 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_27, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6090: X[p + count] = xt
__pyx_t_29 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6091: Y[p + count] = yt
__pyx_t_30 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6092: a[p + count] = 1
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6093: MAJ[p + count] = 1
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+6094: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
__pyx_t_34 = 0;
__pyx_t_35 = __pyx_v_xt;
__pyx_t_36 = __pyx_v_yt;
__pyx_t_37 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_36, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_37, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_34, __pyx_pybuffernd_col.diminfo[1].strides));
+6095: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_38 = (__pyx_v_p + __pyx_v_count);
__pyx_t_39 = 1;
__pyx_t_40 = __pyx_v_xt;
__pyx_t_41 = __pyx_v_yt;
__pyx_t_42 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_39, __pyx_pybuffernd_col.diminfo[1].strides));
+6096: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_43 = (__pyx_v_p + __pyx_v_count);
__pyx_t_44 = 2;
__pyx_t_45 = __pyx_v_xt;
__pyx_t_46 = __pyx_v_yt;
__pyx_t_47 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
+6097: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6098: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6099: else:
+6100: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_24 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L14_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
}
__pyx_L5:;
+6101: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_48 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_48, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_48, 0+__pyx_t_25, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 1+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_48, 2+__pyx_t_25, __pyx_t_8); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_48, 3+__pyx_t_25, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_48, 4+__pyx_t_25, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_48, 5+__pyx_t_25, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_48, 6+__pyx_t_25, __pyx_int_1); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_48, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 6101, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_48 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_48 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_48); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_48 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6101, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_49 = Py_TYPE(__pyx_t_5)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_5); if (unlikely(!__pyx_t_23)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_48 = __pyx_t_49(__pyx_t_5); if (unlikely(!__pyx_t_48)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_48); if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_5), 2) < 0) __PYX_ERR(0, 6101, __pyx_L1_error) __pyx_t_49 = NULL; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_49 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 6101, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6101, __pyx_L1_error) if (!(likely(((__pyx_t_48) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_48, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6101, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6101, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_48); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6101, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_48)); __pyx_t_48 = 0;
+6102: w = 0
__pyx_v_w = 0;
+6103: count = 0
__pyx_v_count = 0;
+6104: while count < dp:
while (1) {
__pyx_t_22 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_22) break;
+6105: xt = xtrial[w]
__pyx_t_50 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+6106: yt = ytrial[w]
__pyx_t_51 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+6107: if I[xt, yt] == 0:
__pyx_t_52 = __pyx_v_xt;
__pyx_t_53 = __pyx_v_yt;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_53, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+6108: I[xt, yt] = p + count + 1
__pyx_t_54 = __pyx_v_xt;
__pyx_t_55 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6109: X[p + count] = xt
__pyx_t_56 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6110: Y[p + count] = yt
__pyx_t_57 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6111: a[p + count] = 1
__pyx_t_58 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6112: MAJ[p + count] = 1
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+6113: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
__pyx_t_61 = 0;
__pyx_t_62 = __pyx_v_xt;
__pyx_t_63 = __pyx_v_yt;
__pyx_t_64 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_64, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_61, __pyx_pybuffernd_col.diminfo[1].strides));
+6114: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_65 = (__pyx_v_p + __pyx_v_count);
__pyx_t_66 = 1;
__pyx_t_67 = __pyx_v_xt;
__pyx_t_68 = __pyx_v_yt;
__pyx_t_69 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_69, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_col.diminfo[1].strides));
+6115: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_70 = (__pyx_v_p + __pyx_v_count);
__pyx_t_71 = 2;
__pyx_t_72 = __pyx_v_xt;
__pyx_t_73 = __pyx_v_yt;
__pyx_t_74 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_col.diminfo[1].strides));
+6116: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6117: if w < dp - 1:
__pyx_t_22 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L22;
}
+6118: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
6119: else:
+6120: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_48 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_48, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_48); __pyx_t_48 = 0;
__pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_48);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_8 = NULL;
__pyx_t_25 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
__pyx_t_25 = 1;
}
}
__pyx_t_1 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_25, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_48);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_25, __pyx_t_48);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_25, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_25, __pyx_t_7);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 6+__pyx_t_25, __pyx_int_1);
__pyx_t_48 = 0;
__pyx_t_5 = 0;
__pyx_t_7 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 6120, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_23 = PyList_GET_ITEM(sequence, 0);
__pyx_t_1 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_23);
__Pyx_INCREF(__pyx_t_1);
#else
__pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6120, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_49 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_23 = __pyx_t_49(__pyx_t_7); if (unlikely(!__pyx_t_23)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
index = 1; __pyx_t_1 = __pyx_t_49(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_49(__pyx_t_7), 2) < 0) __PYX_ERR(0, 6120, __pyx_L1_error)
__pyx_t_49 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_49 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 6120, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6120, __pyx_L1_error)
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6120, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_19, &__pyx_t_18);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_18);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_19, __pyx_t_18);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6120, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_18); Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_18, __pyx_t_19, __pyx_t_20);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6120, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
+6121: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+6122: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6123:
6124:
+6125: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+6126: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
6127:
+6128: for k in range(0, p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_k = __pyx_t_76;
+6129: if a[k] == 1:
__pyx_t_77 = __pyx_v_k;
__pyx_t_22 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_22) {
/* … */
}
}
+6130: a[k] = 0
__pyx_t_78 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+6131: xo = X[k]
__pyx_t_79 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_X.diminfo[0].strides));
+6132: yo = Y[k]
__pyx_t_80 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Y.diminfo[0].strides));
+6133: Io = I[xo, yo]
__pyx_t_81 = __pyx_v_xo;
__pyx_t_82 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_82, __pyx_pybuffernd_I.diminfo[1].strides));
+6134: Maj = MAJ[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_Maj = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_MAJ.diminfo[0].strides));
+6135: Min = Maj / R
__pyx_v_Min = (__pyx_v_Maj / __pyx_v_R);
+6136: MAJceil = math.ceil(Maj)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ceil); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_Maj); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); } } if (!__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_23, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6136, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_84 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_84 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6136, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_MAJceil = __pyx_t_84;
+6137: MINceil = math.ceil(Min)
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_ceil); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = PyFloat_FromDouble(__pyx_v_Min); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_1) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_23); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6137, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_84 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_84 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6137, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_MINceil = __pyx_t_84;
+6138: red = col[k, 0]
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_85, __pyx_pybuffernd_col.diminfo[1].strides));
+6139: green = col[k, 1]
__pyx_t_86 = __pyx_v_k;
__pyx_t_87 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_col.diminfo[1].strides));
+6140: blue = col[k, 2]
__pyx_t_88 = __pyx_v_k;
__pyx_t_89 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_col.diminfo[1].strides));
6141:
6142:
+6143: for deli in range(MAJceil + 1):
__pyx_t_90 = (__pyx_v_MAJceil + 1);
for (__pyx_t_91 = 0; __pyx_t_91 < __pyx_t_90; __pyx_t_91+=1) {
__pyx_v_deli = __pyx_t_91;
+6144: for delj in range(MINceil + 1):
__pyx_t_92 = (__pyx_v_MINceil + 1);
for (__pyx_t_93 = 0; __pyx_t_93 < __pyx_t_92; __pyx_t_93+=1) {
__pyx_v_delj = __pyx_t_93;
+6145: if (deli / Maj) ** 2 + (delj / Min) ** 2 < 1:
__pyx_t_22 = (((powf((((float)__pyx_v_deli) / __pyx_v_Maj), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_22) {
/* … */
}
}
}
+6146: i, j = xo + deli, yo + delj
__pyx_t_94 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_95 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_94;
__pyx_v_j = __pyx_t_95;
+6147: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L34_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L34_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6148: if I[i, j] == 0:
__pyx_t_95 = __pyx_v_i;
__pyx_t_94 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+6149: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L37;
}
+6150: PN = I[i - 1, j]
__pyx_t_97 = (__pyx_v_i - 1);
__pyx_t_98 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_98, __pyx_pybuffernd_I.diminfo[1].strides));
6151: else:
+6152: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L37:;
+6153: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L38;
}
+6154: PW = I[i, j - 1]
__pyx_t_99 = __pyx_v_i;
__pyx_t_100 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_I.diminfo[1].strides));
6155: else:
+6156: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L38:;
+6157: if PN == Io or PW == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L40_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L40_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6158: I[i, j] = Io
__pyx_t_101 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6159: Col[i, j, 2] = red
__pyx_t_103 = __pyx_v_i;
__pyx_t_104 = __pyx_v_j;
__pyx_t_105 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6160: Col[i, j, 1] = green
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = __pyx_v_j;
__pyx_t_108 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6161: Col[i, j, 0] = blue
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = __pyx_v_j;
__pyx_t_111 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6162: a[k] = 1
__pyx_t_112 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6163:
+6164: i, j = xo - deli, yo + delj
__pyx_t_113 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_114 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_113;
__pyx_v_j = __pyx_t_114;
+6165: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L43_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L43_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6166: if I[i, j] == 0:
__pyx_t_114 = __pyx_v_i;
__pyx_t_113 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+6167: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L46;
}
+6168: PS = I[i + 1, j]
__pyx_t_115 = (__pyx_v_i + 1);
__pyx_t_116 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides));
6169: else:
+6170: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L46:;
+6171: if j > 0:
__pyx_t_22 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L47;
}
+6172: PW = I[i, j - 1]
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides));
6173: else:
+6174: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L47:;
+6175: if PW == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L49_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L49_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6176: I[i, j] = Io
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6177: Col[i, j, 2] = red
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6178: Col[i, j, 1] = green
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_126 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6179: Col[i, j, 0] = blue
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
__pyx_t_129 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6180: a[k] = 1
__pyx_t_130 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6181:
+6182: i, j = xo - deli, yo - delj
__pyx_t_131 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_132 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_131;
__pyx_v_j = __pyx_t_132;
+6183: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L52_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L52_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6184: if I[i, j] == 0:
__pyx_t_132 = __pyx_v_i;
__pyx_t_131 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+6185: if i < m - 1:
__pyx_t_22 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L55;
}
+6186: PS = I[i + 1, j]
__pyx_t_133 = (__pyx_v_i + 1);
__pyx_t_134 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides));
6187: else:
+6188: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L55:;
+6189: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L56;
}
+6190: PE = I[i, j + 1]
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides));
6191: else:
+6192: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L56:;
+6193: if PE == Io or PS == Io:
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L58_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L58_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6194: I[i, j] = Io
__pyx_t_137 = __pyx_v_i;
__pyx_t_138 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6195: Col[i, j, 2] = red
__pyx_t_139 = __pyx_v_i;
__pyx_t_140 = __pyx_v_j;
__pyx_t_141 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6196: Col[i, j, 1] = green
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = __pyx_v_j;
__pyx_t_144 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6197: Col[i, j, 0] = blue
__pyx_t_145 = __pyx_v_i;
__pyx_t_146 = __pyx_v_j;
__pyx_t_147 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6198: a[k] = 1
__pyx_t_148 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6199:
+6200: i, j = xo + deli, yo - delj
__pyx_t_149 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_150 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_149;
__pyx_v_j = __pyx_t_150;
+6201: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_24 = (0 <= __pyx_v_i);
if (__pyx_t_24) {
__pyx_t_24 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_96 = (__pyx_t_24 != 0);
if (__pyx_t_96) {
} else {
__pyx_t_22 = __pyx_t_96;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_96 = (0 <= __pyx_v_j);
if (__pyx_t_96) {
__pyx_t_96 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_24 = (__pyx_t_96 != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L61_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6202: if I[i, j] == 0:
__pyx_t_150 = __pyx_v_i;
__pyx_t_149 = __pyx_v_j;
__pyx_t_22 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_149, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+6203: if i > 0:
__pyx_t_22 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L64;
}
+6204: PN = I[i - 1, j]
__pyx_t_151 = (__pyx_v_i - 1);
__pyx_t_152 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_I.diminfo[1].strides));
6205: else:
+6206: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L64:;
+6207: if j < n - 1:
__pyx_t_22 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_22) {
/* … */
goto __pyx_L65;
}
+6208: PE = I[i, j + 1]
__pyx_t_153 = __pyx_v_i;
__pyx_t_154 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides));
6209: else:
+6210: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L65:;
+6211: if PN == Io or PE == Io:
__pyx_t_24 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_24) {
} else {
__pyx_t_22 = __pyx_t_24;
goto __pyx_L67_bool_binop_done;
}
__pyx_t_24 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_22 = __pyx_t_24;
__pyx_L67_bool_binop_done:;
if (__pyx_t_22) {
/* … */
}
+6212: I[i, j] = Io
__pyx_t_155 = __pyx_v_i;
__pyx_t_156 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6213: Col[i, j, 2] = red
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_159 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6214: Col[i, j, 1] = green
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = __pyx_v_j;
__pyx_t_162 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6215: Col[i, j, 0] = blue
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
__pyx_t_165 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6216: a[k] = 1
__pyx_t_166 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6217:
+6218: if a[k] == 0:
__pyx_t_90 = __pyx_v_k;
__pyx_t_22 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_22) {
/* … */
}
+6219: xmin = max(0, xo - MAJceil)
__pyx_t_91 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_167 = 0;
if (((__pyx_t_91 > __pyx_t_167) != 0)) {
__pyx_t_92 = __pyx_t_91;
} else {
__pyx_t_92 = __pyx_t_167;
}
__pyx_v_xmin = __pyx_t_92;
+6220: xmax = min(m - 1, xo + MAJceil)
__pyx_t_92 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_91 = (__pyx_v_m - 1);
if (((__pyx_t_92 < __pyx_t_91) != 0)) {
__pyx_t_93 = __pyx_t_92;
} else {
__pyx_t_93 = __pyx_t_91;
}
__pyx_v_xmax = __pyx_t_93;
+6221: ymin = max(0, yo - MINceil)
__pyx_t_93 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_167 = 0;
if (((__pyx_t_93 > __pyx_t_167) != 0)) {
__pyx_t_92 = __pyx_t_93;
} else {
__pyx_t_92 = __pyx_t_167;
}
__pyx_v_ymin = __pyx_t_92;
+6222: ymax = min(n - 1, yo + MINceil)
__pyx_t_92 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_93 = (__pyx_v_n - 1);
if (((__pyx_t_92 < __pyx_t_93) != 0)) {
__pyx_t_91 = __pyx_t_92;
} else {
__pyx_t_91 = __pyx_t_93;
}
__pyx_v_ymax = __pyx_t_91;
+6223: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_91 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
6224:
6225:
+6226: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+6227: for i in range(p):
__pyx_t_75 = __pyx_v_p;
for (__pyx_t_76 = 0; __pyx_t_76 < __pyx_t_75; __pyx_t_76+=1) {
__pyx_v_i = __pyx_t_76;
+6228: MAJ[i] = MAJ[i] + 1
__pyx_t_92 = __pyx_v_i;
__pyx_t_93 = __pyx_v_i;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + 1);
}
+6229: nnz = cv2.countNonZero(I)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_5) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_23 = PyTuple_New(1+1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_23, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_23, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_75 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_75 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6229, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_nnz = __pyx_t_75; }
6230:
+6231: obj.p = p
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_6) < 0) __PYX_ERR(0, 6231, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6232: toc = time.time()
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_time); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); } } if (__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_23, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6232, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } else { __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_23); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6232, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_21 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_21 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6232, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_toc = __pyx_t_21;
+6233: obj.exetime = toc - tic
__pyx_t_6 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6233, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_6) < 0) __PYX_ERR(0, 6233, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6234: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_delete); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_8 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_25 = 1; } } __pyx_t_168 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_168)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_168); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_168, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_168, 0+__pyx_t_25, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_168, 1+__pyx_t_25, __pyx_t_48); __pyx_t_5 = 0; __pyx_t_48 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_168, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_168); __pyx_t_168 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_25 = 1; } } __pyx_t_168 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_168)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_168); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_168, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_168, 0+__pyx_t_25, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_168, 1+__pyx_t_25, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_168, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_168); __pyx_t_168 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_6) < 0) __PYX_ERR(0, 6234, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6235: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_168 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_delete); if (unlikely(!__pyx_t_168)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_168); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_48 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_48)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_48); __pyx_t_5 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_25 = 1; } } __pyx_t_8 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_25, __pyx_t_23); __Pyx_GIVEREF(__pyx_t_48); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_25, __pyx_t_48); __pyx_t_23 = 0; __pyx_t_48 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_168))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_168); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_168); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_168, function); __pyx_t_25 = 1; } } __pyx_t_8 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_25, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_25, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_168, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_168); __pyx_t_168 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_6) < 0) __PYX_ERR(0, 6235, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6236: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 6236, __pyx_L1_error)
+6237: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 6237, __pyx_L1_error)
+6238: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
6239:
6240:
+6241: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_47Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_47Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_47Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_47Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_46Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_46Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
float __pyx_v_R;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_Min;
float __pyx_v_Maj;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot", 0);
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_24);
__Pyx_XDECREF(__pyx_t_34);
__Pyx_XDECREF(__pyx_t_334);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__57 = PyTuple_Pack(68, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_R, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_Thetafunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_tmp, __pyx_n_s_Min, __pyx_n_s_Maj, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_MAJ, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(0, 6241, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__57);
__Pyx_GIVEREF(__pyx_tuple__57);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_47Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6241, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_6, __pyx_t_2) < 0) __PYX_ERR(0, 6241, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__58 = (PyObject*)__Pyx_PyCode_New(1, 0, 68, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__57, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_6, 6241, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__58)) __PYX_ERR(0, 6241, __pyx_L1_error)
6242: # Grabbing data from the input object
+6243: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6243, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6243, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+6244: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6244, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+6245: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6245, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6245, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+6246: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6246, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6246, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+6247: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6247, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+6248: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+6249: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6249, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6249, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+6250: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6250, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6250, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+6251: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6251, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6251, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+6252: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+6253: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+6254: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+6255: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6255, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+6256: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+6257: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6257, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
6258:
6259: # Declaring other variables
6260: cdef double tic, toc
6261: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, delX, delY, xmin, xmax, ymin, ymax, dum, Iter
6262: cdef float dt, f, t, tmp, Min, Maj, theta, c, s, red, green, blue
+6263: cdef np.ndarray[np.int64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6263, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6263, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_9 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6264: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6264, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6264, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6265: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6265, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6265, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6266: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6266, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6266, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_12 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6267: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6267, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6267, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6268: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6268, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6268, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6269: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6269, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6269, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6270: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(MN, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6270, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6270, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6271: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6271, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6271, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6272: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6272, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6272, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_18 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6273: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6273, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+6274: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6274, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6274, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+6275: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_6) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6275, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_tic = __pyx_t_22;
6276:
6277:
6278:
+6279: t = 0
__pyx_v_t = 0.0;
+6280: p = 0
__pyx_v_p = 0;
+6281: dp = 0
__pyx_v_dp = 0;
+6282: countim = 0
__pyx_v_countim = 0;
+6283: nnz = 0
__pyx_v_nnz = 0;
+6284: Iter = 1
__pyx_v_Iter = 1;
+6285: while nnz < MN:
while (1) {
__pyx_t_23 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_23) break;
+6286: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+6287: dt = 1.0 / Gt(t)
__pyx_t_7 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_1, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+6288: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_7 = __pyx_v_Ndot; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_5) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_24 = PyTuple_New(1+1); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_24, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_24, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_24, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyNumber_Multiply(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyNumber_Multiply(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6288, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_dp = __pyx_t_2;
+6289: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+6290: if pdelNxy == []:
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6290, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6290, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 6290, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_23) { /* … */ goto __pyx_L5; }
+6291: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_25 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L7_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6292: count = 0
__pyx_v_count = 0;
+6293: while count < dp:
while (1) {
__pyx_t_23 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_23) break;
+6294: xt = np.random.randint(0, m - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_24 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_24 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_24)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_24); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_26 = 1; } } __pyx_t_8 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_24) { __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_24); __pyx_t_24 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_26, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6294, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+6295: yt = np.random.randint(0, n - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_26 = 1; } } __pyx_t_24 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_24, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_24, 0+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_24, 1+__pyx_t_26, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_24, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6295, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+6296: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_27 = __pyx_v_yt;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_27, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
}
+6297: I[xt, yt] = p + count + 1
__pyx_t_28 = __pyx_v_xt;
__pyx_t_29 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_29, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6298: X[p + count] = xt
__pyx_t_30 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6299: Y[p + count] = yt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6300: a[p + count] = 1
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6301: MAJ[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+6302: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_7 = __pyx_v_Thetafunc; __pyx_t_5 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_26 = 1; } } __pyx_t_34 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_34, 0+__pyx_t_26, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_34, 1+__pyx_t_26, __pyx_t_24); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_34, 2+__pyx_t_26, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_34, 3+__pyx_t_26, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_34, 4+__pyx_t_26, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_24 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_34, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 6302, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_36 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_35;
+6303: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_37 = (__pyx_v_p + __pyx_v_count);
__pyx_t_38 = 0;
__pyx_t_39 = __pyx_v_xt;
__pyx_t_40 = __pyx_v_yt;
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_col.diminfo[1].strides));
+6304: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_42 = (__pyx_v_p + __pyx_v_count);
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_xt;
__pyx_t_45 = __pyx_v_yt;
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+6305: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_47 = (__pyx_v_p + __pyx_v_count);
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_xt;
__pyx_t_50 = __pyx_v_yt;
__pyx_t_51 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+6306: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6307: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6308: else:
+6309: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_25 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L14_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
}
__pyx_L5:;
+6310: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_26 = 1; } } __pyx_t_5 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, __pyx_t_7); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_26, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_5, 5+__pyx_t_26, __pyx_t_24); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 6+__pyx_t_26, __pyx_int_1); __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_24 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 6310, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_34 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_34 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_34 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_24 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_52 = Py_TYPE(__pyx_t_24)->tp_iternext; index = 0; __pyx_t_34 = __pyx_t_52(__pyx_t_24); if (unlikely(!__pyx_t_34)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_34); index = 1; __pyx_t_5 = __pyx_t_52(__pyx_t_24); if (unlikely(!__pyx_t_5)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_24), 2) < 0) __PYX_ERR(0, 6310, __pyx_L1_error) __pyx_t_52 = NULL; __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_t_52 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 6310, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_34) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_34, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6310, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6310, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_34); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6310, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_34)); __pyx_t_34 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6310, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+6311: w = 0
__pyx_v_w = 0;
+6312: count = 0
__pyx_v_count = 0;
+6313: while count < dp:
while (1) {
__pyx_t_23 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_23) break;
+6314: xt = xtrial[w]
__pyx_t_53 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+6315: yt = ytrial[w]
__pyx_t_54 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+6316: if I[xt, yt] == 0:
__pyx_t_55 = __pyx_v_xt;
__pyx_t_56 = __pyx_v_yt;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_56, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6317: I[xt, yt] = p + count + 1
__pyx_t_57 = __pyx_v_xt;
__pyx_t_58 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_58, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6318: X[p + count] = xt
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6319: Y[p + count] = yt
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6320: a[p + count] = 1
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6321: MAJ[p + count] = 1
__pyx_t_62 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+6322: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1 , 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_8 = __pyx_v_Thetafunc; __pyx_t_7 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_26 = 1; } } __pyx_t_1 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_t_34); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_26, __pyx_t_24); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_26, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_26, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_34 = 0; __pyx_t_24 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 6322, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_63 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_35;
+6323: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_64 = (__pyx_v_p + __pyx_v_count);
__pyx_t_65 = 0;
__pyx_t_66 = __pyx_v_xt;
__pyx_t_67 = __pyx_v_yt;
__pyx_t_68 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_68, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_65, __pyx_pybuffernd_col.diminfo[1].strides));
+6324: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_69 = (__pyx_v_p + __pyx_v_count);
__pyx_t_70 = 1;
__pyx_t_71 = __pyx_v_xt;
__pyx_t_72 = __pyx_v_yt;
__pyx_t_73 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_70, __pyx_pybuffernd_col.diminfo[1].strides));
+6325: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_74 = (__pyx_v_p + __pyx_v_count);
__pyx_t_75 = 2;
__pyx_t_76 = __pyx_v_xt;
__pyx_t_77 = __pyx_v_yt;
__pyx_t_78 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_col.diminfo[1].strides));
+6326: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6327: if w < dp - 1:
__pyx_t_23 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L22;
}
+6328: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
6329: else:
+6330: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_24);
__pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_26 = 1;
}
}
__pyx_t_7 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_26, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_26, __pyx_t_8);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_24);
PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_26, __pyx_t_24);
__Pyx_GIVEREF(__pyx_t_34);
PyTuple_SET_ITEM(__pyx_t_7, 5+__pyx_t_26, __pyx_t_34);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_7, 6+__pyx_t_26, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_24 = 0;
__pyx_t_34 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 6330, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_7 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_7);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_34 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6330, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_52 = Py_TYPE(__pyx_t_34)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_1)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_7 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_7)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_34), 2) < 0) __PYX_ERR(0, 6330, __pyx_L1_error)
__pyx_t_52 = NULL;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
__pyx_t_52 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 6330, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6330, __pyx_L1_error)
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6330, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6330, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6330, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
+6331: w = 0
__pyx_v_w = 0;
}
__pyx_L22:;
}
+6332: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6333:
6334:
+6335: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+6336: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
6337:
+6338: for k in range(0, p):
__pyx_t_79 = __pyx_v_p;
for (__pyx_t_80 = 0; __pyx_t_80 < __pyx_t_79; __pyx_t_80+=1) {
__pyx_v_k = __pyx_t_80;
+6339: if a[k] == 1:
__pyx_t_81 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+6340: a[k] = 0
__pyx_t_82 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+6341: xo = X[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
+6342: yo = Y[k]
__pyx_t_84 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
+6343: Io = I[xo, yo]
__pyx_t_85 = __pyx_v_xo;
__pyx_t_86 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
+6344: theta = Theta[k]
__pyx_t_87 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_Theta.diminfo[0].strides));
+6345: c = math.cos(theta)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_cos); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_34 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_34) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6345, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_24 = PyTuple_New(1+1); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_24, 0, __pyx_t_34); __pyx_t_34 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_24, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_24, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6345, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6345, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_c = __pyx_t_3;
+6346: s = -math.sin(theta)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_24 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sin); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_24))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_24); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_24); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_24, function); } } if (!__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_24, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_34 = PyTuple_New(1+1); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_34, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_24, __pyx_t_34, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; } __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_t_24 = PyNumber_Negative(__pyx_t_6); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_24); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6346, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_v_s = __pyx_t_3;
+6347: Maj = MAJ[k]
__pyx_t_88 = __pyx_v_k;
__pyx_v_Maj = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_MAJ.diminfo[0].strides));
+6348: Min = Maj / R
__pyx_v_Min = (__pyx_v_Maj / __pyx_v_R);
+6349: delX = math.ceil(math.sqrt((Maj * c) ** 2 + (Min * s) ** 2))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_c), 2.0) + powf((__pyx_v_Min * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_8) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); } } if (!__pyx_t_7) { __pyx_t_24 = __Pyx_PyObject_CallOneArg(__pyx_t_34, __pyx_t_6); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_24); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_89 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_24); if (unlikely((__pyx_t_89 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6349, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_v_delX = __pyx_t_89;
+6350: delY = math.ceil(math.sqrt((Maj * s) ** 2 + (Min * c) ** 2))
__pyx_t_34 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_34, __pyx_n_s_ceil); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_s), 2.0) + powf((__pyx_v_Min * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_1) { __pyx_t_34 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_34); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_34 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_24 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_34); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __Pyx_GOTREF(__pyx_t_24); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_34); __pyx_t_34 = 0; __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_89 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_24); if (unlikely((__pyx_t_89 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6350, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_v_delY = __pyx_t_89;
+6351: red = col[k, 0]
__pyx_t_89 = __pyx_v_k;
__pyx_t_90 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_col.diminfo[1].strides));
+6352: green = col[k, 1]
__pyx_t_91 = __pyx_v_k;
__pyx_t_92 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_col.diminfo[1].strides));
+6353: blue = col[k, 2]
__pyx_t_93 = __pyx_v_k;
__pyx_t_94 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_col.diminfo[1].strides));
6354:
+6355: for deli in range(0, delX + 1):
__pyx_t_95 = (__pyx_v_delX + 1);
for (__pyx_t_96 = 0; __pyx_t_96 < __pyx_t_95; __pyx_t_96+=1) {
__pyx_v_deli = __pyx_t_96;
+6356: for delj in range(0, delY + 1):
__pyx_t_97 = (__pyx_v_delY + 1);
for (__pyx_t_98 = 0; __pyx_t_98 < __pyx_t_97; __pyx_t_98+=1) {
__pyx_v_delj = __pyx_t_98;
+6357: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_23 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
6358:
+6359: i, j = xo + deli, yo + delj
__pyx_t_99 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_100 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_99;
__pyx_v_j = __pyx_t_100;
+6360: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L34_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L34_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6361: if I[i, j] == 0:
__pyx_t_100 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6362: for dum in range(1):
for (__pyx_t_102 = 0; __pyx_t_102 < 1; __pyx_t_102+=1) {
__pyx_v_dum = __pyx_t_102;
6363:
+6364: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6365: if I[i - 1, j] == Io:
__pyx_t_103 = (__pyx_v_i - 1);
__pyx_t_104 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6366: I[i, j] = Io
__pyx_t_105 = __pyx_v_i;
__pyx_t_106 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_105, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6367: Col[i, j, 2] = red
__pyx_t_107 = __pyx_v_i;
__pyx_t_108 = __pyx_v_j;
__pyx_t_109 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6368: Col[i, j, 1] = green
__pyx_t_110 = __pyx_v_i;
__pyx_t_111 = __pyx_v_j;
__pyx_t_112 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6369: Col[i, j, 0] = blue
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
__pyx_t_115 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6370: a[k] = 1
__pyx_t_116 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6371: break
goto __pyx_L38_break;
+6372: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6373: if I[i, j - 1] == Io:
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6374: I[i, j] = Io
__pyx_t_119 = __pyx_v_i;
__pyx_t_120 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6375: Col[i, j, 2] = red
__pyx_t_121 = __pyx_v_i;
__pyx_t_122 = __pyx_v_j;
__pyx_t_123 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6376: Col[i, j, 1] = green
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
__pyx_t_126 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6377: Col[i, j, 0] = blue
__pyx_t_127 = __pyx_v_i;
__pyx_t_128 = __pyx_v_j;
__pyx_t_129 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6378: a[k] = 1
__pyx_t_130 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6379: break
goto __pyx_L38_break;
6380:
+6381: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+6382: if I[i, j + 1] == Io:
__pyx_t_131 = __pyx_v_i;
__pyx_t_132 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6383: I[i, j] = Io
__pyx_t_133 = __pyx_v_i;
__pyx_t_134 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6384: Col[i, j, 2] = red
__pyx_t_135 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
__pyx_t_137 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6385: Col[i, j, 1] = green
__pyx_t_138 = __pyx_v_i;
__pyx_t_139 = __pyx_v_j;
__pyx_t_140 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6386: Col[i, j, 0] = blue
__pyx_t_141 = __pyx_v_i;
__pyx_t_142 = __pyx_v_j;
__pyx_t_143 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6387: a[k] = 1
__pyx_t_144 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6388: break
goto __pyx_L38_break;
6389:
6390:
+6391: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L38_break:;
+6392: if I[i + 1, j] == Io:
__pyx_t_145 = (__pyx_v_i + 1);
__pyx_t_146 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6393: I[i, j] = Io
__pyx_t_147 = __pyx_v_i;
__pyx_t_148 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6394: Col[i, j, 2] = red
__pyx_t_149 = __pyx_v_i;
__pyx_t_150 = __pyx_v_j;
__pyx_t_151 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_150, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6395: Col[i, j, 1] = green
__pyx_t_152 = __pyx_v_i;
__pyx_t_153 = __pyx_v_j;
__pyx_t_154 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_154, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6396: Col[i, j, 0] = blue
__pyx_t_155 = __pyx_v_i;
__pyx_t_156 = __pyx_v_j;
__pyx_t_157 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_156, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6397: a[k] = 1
__pyx_t_158 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6398: break
goto __pyx_L38_break;
6399:
6400:
+6401: i, j = xo - deli, yo - delj
__pyx_t_102 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_159 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_102;
__pyx_v_j = __pyx_t_159;
+6402: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L48_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L48_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6403: if I[i, j] == 0:
__pyx_t_159 = __pyx_v_i;
__pyx_t_102 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6404: for dum in range(1):
for (__pyx_t_160 = 0; __pyx_t_160 < 1; __pyx_t_160+=1) {
__pyx_v_dum = __pyx_t_160;
6405:
+6406: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6407: if I[i - 1, j] == Io:
__pyx_t_161 = (__pyx_v_i - 1);
__pyx_t_162 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6408: I[i, j] = Io
__pyx_t_163 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6409: Col[i, j, 2] = red
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6410: Col[i, j, 1] = green
__pyx_t_168 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_170 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6411: Col[i, j, 0] = blue
__pyx_t_171 = __pyx_v_i;
__pyx_t_172 = __pyx_v_j;
__pyx_t_173 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6412: a[k] = 1
__pyx_t_174 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6413: break
goto __pyx_L52_break;
+6414: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6415: if I[i, j - 1] == Io:
__pyx_t_175 = __pyx_v_i;
__pyx_t_176 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6416: I[i, j] = Io
__pyx_t_177 = __pyx_v_i;
__pyx_t_178 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6417: Col[i, j, 2] = red
__pyx_t_179 = __pyx_v_i;
__pyx_t_180 = __pyx_v_j;
__pyx_t_181 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_181, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6418: Col[i, j, 1] = green
__pyx_t_182 = __pyx_v_i;
__pyx_t_183 = __pyx_v_j;
__pyx_t_184 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6419: Col[i, j, 0] = blue
__pyx_t_185 = __pyx_v_i;
__pyx_t_186 = __pyx_v_j;
__pyx_t_187 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6420: a[k] = 1
__pyx_t_188 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_188, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6421: break
goto __pyx_L52_break;
6422:
+6423: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+6424: if I[i, j + 1] == Io:
__pyx_t_189 = __pyx_v_i;
__pyx_t_190 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_189, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_190, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6425: I[i, j] = Io
__pyx_t_191 = __pyx_v_i;
__pyx_t_192 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6426: Col[i, j, 2] = red
__pyx_t_193 = __pyx_v_i;
__pyx_t_194 = __pyx_v_j;
__pyx_t_195 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_193, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_194, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6427: Col[i, j, 1] = green
__pyx_t_196 = __pyx_v_i;
__pyx_t_197 = __pyx_v_j;
__pyx_t_198 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6428: Col[i, j, 0] = blue
__pyx_t_199 = __pyx_v_i;
__pyx_t_200 = __pyx_v_j;
__pyx_t_201 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6429: a[k] = 1
__pyx_t_202 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_202, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6430: break
goto __pyx_L52_break;
6431:
6432:
+6433: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L52_break:;
+6434: if I[i + 1, j] == Io:
__pyx_t_203 = (__pyx_v_i + 1);
__pyx_t_204 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_204, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6435: I[i, j] = Io
__pyx_t_205 = __pyx_v_i;
__pyx_t_206 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_206, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6436: Col[i, j, 2] = red
__pyx_t_207 = __pyx_v_i;
__pyx_t_208 = __pyx_v_j;
__pyx_t_209 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_208, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_209, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6437: Col[i, j, 1] = green
__pyx_t_210 = __pyx_v_i;
__pyx_t_211 = __pyx_v_j;
__pyx_t_212 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_210, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_211, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_212, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6438: Col[i, j, 0] = blue
__pyx_t_213 = __pyx_v_i;
__pyx_t_214 = __pyx_v_j;
__pyx_t_215 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_213, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_214, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_215, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6439: a[k] = 1
__pyx_t_216 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_216, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6440: break
goto __pyx_L52_break;
6441:
+6442: for deli in range(0, -delX - 1, -1):
__pyx_t_95 = ((-__pyx_v_delX) - 1);
for (__pyx_t_96 = 0; __pyx_t_96 > __pyx_t_95; __pyx_t_96-=1) {
__pyx_v_deli = __pyx_t_96;
+6443: for delj in range(0, delY + 1):
__pyx_t_97 = (__pyx_v_delY + 1);
for (__pyx_t_98 = 0; __pyx_t_98 < __pyx_t_97; __pyx_t_98+=1) {
__pyx_v_delj = __pyx_t_98;
+6444: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_23 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
6445:
+6446: i, j = xo + deli, yo + delj
__pyx_t_160 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_217 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_160;
__pyx_v_j = __pyx_t_217;
+6447: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L67_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L67_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6448: if I[i, j] == 0:
__pyx_t_217 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6449: for dum in range(1):
for (__pyx_t_218 = 0; __pyx_t_218 < 1; __pyx_t_218+=1) {
__pyx_v_dum = __pyx_t_218;
6450:
+6451: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6452: if I[i - 1, j] == Io:
__pyx_t_219 = (__pyx_v_i - 1);
__pyx_t_220 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_219, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_220, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6453: I[i, j] = Io
__pyx_t_221 = __pyx_v_i;
__pyx_t_222 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_222, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6454: Col[i, j, 2] = red
__pyx_t_223 = __pyx_v_i;
__pyx_t_224 = __pyx_v_j;
__pyx_t_225 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_224, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6455: Col[i, j, 1] = green
__pyx_t_226 = __pyx_v_i;
__pyx_t_227 = __pyx_v_j;
__pyx_t_228 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_228, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6456: Col[i, j, 0] = blue
__pyx_t_229 = __pyx_v_i;
__pyx_t_230 = __pyx_v_j;
__pyx_t_231 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_229, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6457: a[k] = 1
__pyx_t_232 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_232, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6458: break
goto __pyx_L71_break;
+6459: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6460: if I[i, j - 1] == Io:
__pyx_t_233 = __pyx_v_i;
__pyx_t_234 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_233, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_234, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6461: I[i, j] = Io
__pyx_t_235 = __pyx_v_i;
__pyx_t_236 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_236, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6462: Col[i, j, 2] = red
__pyx_t_237 = __pyx_v_i;
__pyx_t_238 = __pyx_v_j;
__pyx_t_239 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_238, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6463: Col[i, j, 1] = green
__pyx_t_240 = __pyx_v_i;
__pyx_t_241 = __pyx_v_j;
__pyx_t_242 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6464: Col[i, j, 0] = blue
__pyx_t_243 = __pyx_v_i;
__pyx_t_244 = __pyx_v_j;
__pyx_t_245 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6465: a[k] = 1
__pyx_t_246 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_246, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6466: break
goto __pyx_L71_break;
6467:
+6468: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+6469: if I[i, j + 1] == Io:
__pyx_t_247 = __pyx_v_i;
__pyx_t_248 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_248, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6470: I[i, j] = Io
__pyx_t_249 = __pyx_v_i;
__pyx_t_250 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_250, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6471: Col[i, j, 2] = red
__pyx_t_251 = __pyx_v_i;
__pyx_t_252 = __pyx_v_j;
__pyx_t_253 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_251, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_252, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_253, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6472: Col[i, j, 1] = green
__pyx_t_254 = __pyx_v_i;
__pyx_t_255 = __pyx_v_j;
__pyx_t_256 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6473: Col[i, j, 0] = blue
__pyx_t_257 = __pyx_v_i;
__pyx_t_258 = __pyx_v_j;
__pyx_t_259 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_259, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6474: a[k] = 1
__pyx_t_260 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_260, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6475: break
goto __pyx_L71_break;
6476:
6477:
+6478: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L71_break:;
+6479: if I[i + 1, j] == Io:
__pyx_t_261 = (__pyx_v_i + 1);
__pyx_t_262 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_261, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_262, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6480: I[i, j] = Io
__pyx_t_263 = __pyx_v_i;
__pyx_t_264 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_263, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_264, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6481: Col[i, j, 2] = red
__pyx_t_265 = __pyx_v_i;
__pyx_t_266 = __pyx_v_j;
__pyx_t_267 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_265, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6482: Col[i, j, 1] = green
__pyx_t_268 = __pyx_v_i;
__pyx_t_269 = __pyx_v_j;
__pyx_t_270 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6483: Col[i, j, 0] = blue
__pyx_t_271 = __pyx_v_i;
__pyx_t_272 = __pyx_v_j;
__pyx_t_273 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_272, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_273, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6484: a[k] = 1
__pyx_t_274 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_274, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6485: break
goto __pyx_L71_break;
6486:
6487:
+6488: i, j = xo - deli, yo - delj
__pyx_t_218 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_275 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_218;
__pyx_v_j = __pyx_t_275;
+6489: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L81_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L81_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6490: if I[i, j] == 0:
__pyx_t_275 = __pyx_v_i;
__pyx_t_218 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_275, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_218, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6491: for dum in range(1):
for (__pyx_t_276 = 0; __pyx_t_276 < 1; __pyx_t_276+=1) {
__pyx_v_dum = __pyx_t_276;
6492:
+6493: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6494: if I[i - 1, j] == Io:
__pyx_t_277 = (__pyx_v_i - 1);
__pyx_t_278 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_278, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6495: I[i, j] = Io
__pyx_t_279 = __pyx_v_i;
__pyx_t_280 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_280, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6496: Col[i, j, 2] = red
__pyx_t_281 = __pyx_v_i;
__pyx_t_282 = __pyx_v_j;
__pyx_t_283 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_281, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_282, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_283, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6497: Col[i, j, 1] = green
__pyx_t_284 = __pyx_v_i;
__pyx_t_285 = __pyx_v_j;
__pyx_t_286 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_286, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6498: Col[i, j, 0] = blue
__pyx_t_287 = __pyx_v_i;
__pyx_t_288 = __pyx_v_j;
__pyx_t_289 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_287, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6499: a[k] = 1
__pyx_t_290 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6500: break
goto __pyx_L85_break;
+6501: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6502: if I[i, j - 1] == Io:
__pyx_t_291 = __pyx_v_i;
__pyx_t_292 = (__pyx_v_j - 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_291, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_292, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6503: I[i, j] = Io
__pyx_t_293 = __pyx_v_i;
__pyx_t_294 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_294, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6504: Col[i, j, 2] = red
__pyx_t_295 = __pyx_v_i;
__pyx_t_296 = __pyx_v_j;
__pyx_t_297 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6505: Col[i, j, 1] = green
__pyx_t_298 = __pyx_v_i;
__pyx_t_299 = __pyx_v_j;
__pyx_t_300 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6506: Col[i, j, 0] = blue
__pyx_t_301 = __pyx_v_i;
__pyx_t_302 = __pyx_v_j;
__pyx_t_303 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_301, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6507: a[k] = 1
__pyx_t_304 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_304, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6508: break
goto __pyx_L85_break;
6509:
+6510: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
+6511: if I[i, j + 1] == Io:
__pyx_t_305 = __pyx_v_i;
__pyx_t_306 = (__pyx_v_j + 1);
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_305, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_306, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6512: I[i, j] = Io
__pyx_t_307 = __pyx_v_i;
__pyx_t_308 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_307, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_308, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6513: Col[i, j, 2] = red
__pyx_t_309 = __pyx_v_i;
__pyx_t_310 = __pyx_v_j;
__pyx_t_311 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_311, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6514: Col[i, j, 1] = green
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = __pyx_v_j;
__pyx_t_314 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6515: Col[i, j, 0] = blue
__pyx_t_315 = __pyx_v_i;
__pyx_t_316 = __pyx_v_j;
__pyx_t_317 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_315, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_316, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_317, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6516: a[k] = 1
__pyx_t_318 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_318, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6517: break
goto __pyx_L85_break;
6518:
6519:
+6520: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
}
}
__pyx_L85_break:;
+6521: if I[i + 1, j] == Io:
__pyx_t_319 = (__pyx_v_i + 1);
__pyx_t_320 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_319, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_320, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_23) {
/* … */
}
+6522: I[i, j] = Io
__pyx_t_321 = __pyx_v_i;
__pyx_t_322 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_322, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6523: Col[i, j, 2] = red
__pyx_t_323 = __pyx_v_i;
__pyx_t_324 = __pyx_v_j;
__pyx_t_325 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6524: Col[i, j, 1] = green
__pyx_t_326 = __pyx_v_i;
__pyx_t_327 = __pyx_v_j;
__pyx_t_328 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6525: Col[i, j, 0] = blue
__pyx_t_329 = __pyx_v_i;
__pyx_t_330 = __pyx_v_j;
__pyx_t_331 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_329, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_330, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_331, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6526: a[k] = 1
__pyx_t_332 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_332, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6527: break
goto __pyx_L85_break;
6528:
6529:
6530:
+6531: if a[k] == 0:
__pyx_t_95 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6532: xmin = max(0, xo - delX)
__pyx_t_96 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_333 = 0;
if (((__pyx_t_96 > __pyx_t_333) != 0)) {
__pyx_t_97 = __pyx_t_96;
} else {
__pyx_t_97 = __pyx_t_333;
}
__pyx_v_xmin = __pyx_t_97;
+6533: xmax = min(m - 1, xo + delX)
__pyx_t_97 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_96 = (__pyx_v_m - 1);
if (((__pyx_t_97 < __pyx_t_96) != 0)) {
__pyx_t_98 = __pyx_t_97;
} else {
__pyx_t_98 = __pyx_t_96;
}
__pyx_v_xmax = __pyx_t_98;
+6534: ymin = max(0, yo - delY)
__pyx_t_98 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_333 = 0;
if (((__pyx_t_98 > __pyx_t_333) != 0)) {
__pyx_t_97 = __pyx_t_98;
} else {
__pyx_t_97 = __pyx_t_333;
}
__pyx_v_ymin = __pyx_t_97;
+6535: ymax = min(n - 1, yo + delY)
__pyx_t_97 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_98 = (__pyx_v_n - 1);
if (((__pyx_t_97 < __pyx_t_98) != 0)) {
__pyx_t_96 = __pyx_t_97;
} else {
__pyx_t_96 = __pyx_t_98;
}
__pyx_v_ymax = __pyx_t_96;
+6536: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_96 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
6537:
6538:
+6539: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+6540: for i in range(p):
__pyx_t_79 = __pyx_v_p;
for (__pyx_t_80 = 0; __pyx_t_80 < __pyx_t_79; __pyx_t_80+=1) {
__pyx_v_i = __pyx_t_80;
+6541: MAJ[i] = MAJ[i] + 1
__pyx_t_97 = __pyx_v_i;
__pyx_t_98 = __pyx_v_i;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + 1);
}
+6542: nnz = cv2.countNonZero(I)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_5) { __pyx_t_24 = __Pyx_PyObject_CallOneArg(__pyx_t_8, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); } else { __pyx_t_34 = PyTuple_New(1+1); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_34, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_34, NULL); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6542, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_79 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_24); if (unlikely((__pyx_t_79 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6542, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_v_nnz = __pyx_t_79; }
6543:
+6544: obj.p = p
__pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6544, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_24) < 0) __PYX_ERR(0, 6544, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
+6545: toc = time.time()
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6545, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_time); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6545, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); } } if (__pyx_t_8) { __pyx_t_24 = __Pyx_PyObject_CallOneArg(__pyx_t_34, __pyx_t_8); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6545, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } else { __pyx_t_24 = __Pyx_PyObject_CallNoArg(__pyx_t_34); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6545, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_24); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6545, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_v_toc = __pyx_t_22;
+6546: obj.exetime = toc - tic
__pyx_t_24 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6546, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_24) < 0) __PYX_ERR(0, 6546, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
+6547: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_34 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_34, __pyx_n_s_delete); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_arange); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_26 = 1; } } __pyx_t_334 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_334)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_334); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_334, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_334, 0+__pyx_t_26, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_334, 1+__pyx_t_26, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_34 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_334, NULL); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_334); __pyx_t_334 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_26 = 1; } } __pyx_t_334 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_334)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_334); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_334, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_334, 0+__pyx_t_26, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_334, 1+__pyx_t_26, __pyx_t_34); __pyx_t_34 = 0; __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_334, NULL); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_334); __pyx_t_334 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_24) < 0) __PYX_ERR(0, 6547, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
+6548: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_334 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_delete); if (unlikely(!__pyx_t_334)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_334); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_34 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_34, __pyx_n_s_arange); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_26 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_t_34); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_t_6); __pyx_t_34 = 0; __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_334))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_334); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_334); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_334, function); __pyx_t_26 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_24 = __Pyx_PyObject_Call(__pyx_t_334, __pyx_t_1, NULL); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_334); __pyx_t_334 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_24) < 0) __PYX_ERR(0, 6548, __pyx_L1_error) __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0;
+6549: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 6549, __pyx_L1_error)
+6550: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 6550, __pyx_L1_error)
+6551: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
6552:
+6553: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_49Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_49Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_49Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_49Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_48Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_48Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_PN;
PY_LONG_LONG __pyx_v_PE;
PY_LONG_LONG __pyx_v_PW;
PY_LONG_LONG __pyx_v_PS;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_Min;
float __pyx_v_Maj;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Rvals = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rvals;
__Pyx_Buffer __pyx_pybuffer_Rvals;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot", 0);
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Rvals.pybuffer.buf = NULL;
__pyx_pybuffer_Rvals.refcount = 0;
__pyx_pybuffernd_Rvals.data = NULL;
__pyx_pybuffernd_Rvals.rcbuffer = &__pyx_pybuffer_Rvals;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_24);
__Pyx_XDECREF(__pyx_t_34);
__Pyx_XDECREF(__pyx_t_173);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rvals.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rvals.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Rvals);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__59 = PyTuple_Pack(63, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_tmp, __pyx_n_s_Min, __pyx_n_s_Maj, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_MAJ, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Rvals, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax); if (unlikely(!__pyx_tuple__59)) __PYX_ERR(0, 6553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__59);
__Pyx_GIVEREF(__pyx_tuple__59);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_49Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6553, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_7, __pyx_t_2) < 0) __PYX_ERR(0, 6553, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__60 = (PyObject*)__Pyx_PyCode_New(1, 0, 63, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__59, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_7, 6553, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__60)) __PYX_ERR(0, 6553, __pyx_L1_error)
6554: # Grabbing data from the input object
+6555: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6555, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6555, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+6556: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6556, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6556, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+6557: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6557, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6557, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+6558: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6558, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6558, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+6559: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6559, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6559, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+6560: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+6561: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6561, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6561, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+6562: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6562, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6562, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+6563: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6563, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+6564: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6564, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+6565: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6565, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+6566: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6566, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+6567: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6567, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+6568: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6568, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
6569:
6570: # Declaring other variables
6571: cdef double tic, toc
6572: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, MAJceil, MINceil, Iter
6573: cdef float dt, f, t, tmp, Min, Maj, red, green, blue
+6574: cdef np.ndarray[np.int64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6574, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6574, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6574, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_9 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6575: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6575, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6575, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6575, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6576: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6576, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6576, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6576, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6577: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6577, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6577, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6577, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_12 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6578: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6578, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6578, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6578, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6579: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6579, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6579, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6579, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6580: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6580, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6580, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6580, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6581: cdef np.ndarray[np.float64_t, ndim = 1] Rvals = np.ones(MN, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ones); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6581, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6581, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rvals.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Rvals = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6581, __pyx_L1_error) } else {__pyx_pybuffernd_Rvals.diminfo[0].strides = __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rvals.diminfo[0].shape = __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Rvals = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6582: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6582, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6582, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6582, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6583: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6583, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6583, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6583, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_18 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6584: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6584, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6584, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+6585: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6585, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6585, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6585, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+6586: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6586, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6586, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_6) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6586, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6586, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6586, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_tic = __pyx_t_22;
6587:
6588:
6589:
+6590: t = 0
__pyx_v_t = 0.0;
+6591: p = 0
__pyx_v_p = 0;
+6592: dp = 0
__pyx_v_dp = 0;
+6593: countim = 0
__pyx_v_countim = 0;
+6594: nnz = 0
__pyx_v_nnz = 0;
+6595: Iter = 1
__pyx_v_Iter = 1;
+6596: if pdelNxy == []:
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6596, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6596, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 6596, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_23) { /* … */ }
6597:
+6598: while nnz < MN:
while (1) {
__pyx_t_23 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_23) break;
+6599: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+6600: dt = 1.0 / Gt(t)
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6600, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_7, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6600, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+6601: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_1 = __pyx_v_Ndot; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_24 = PyTuple_New(1+1); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_24, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_24, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_24, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyNumber_Multiply(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyNumber_Multiply(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_7); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6601, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_dp = __pyx_t_2;
+6602: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+6603: if pdelNxy == []:
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6603, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_23 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_23 < 0)) __PYX_ERR(0, 6603, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_23) { /* … */ goto __pyx_L6; }
+6604: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_25 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L8_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L8_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L8_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6605: count = 0
__pyx_v_count = 0;
+6606: while count < dp:
while (1) {
__pyx_t_23 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_23) break;
+6607: xt = np.random.randint(0, m - 1)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6607, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6607, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6607, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6607, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_24 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_24 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_24)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_24); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_26 = 1; } } __pyx_t_8 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6607, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_24) { __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_24); __pyx_t_24 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_26, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6607, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6607, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+6608: yt = np.random.randint(0, n - 1)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_26 = 1; } } __pyx_t_24 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_24, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_24, 0+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_24, 1+__pyx_t_26, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_24, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6608, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6608, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+6609: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_27 = __pyx_v_yt;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_27, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
}
+6610: I[xt, yt] = p + count + 1
__pyx_t_28 = __pyx_v_xt;
__pyx_t_29 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_28, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_29, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6611: X[p + count] = xt
__pyx_t_30 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6612: Y[p + count] = yt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6613: a[p + count] = 1
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6614: MAJ[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+6615: Rvals[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6615, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6615, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6615, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_1 = __pyx_v_Rfunc; __pyx_t_5 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_26 = 1; } } __pyx_t_34 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6615, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_34, 0+__pyx_t_26, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_34, 1+__pyx_t_26, __pyx_t_24); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_34, 2+__pyx_t_26, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_34, 3+__pyx_t_26, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_34, 4+__pyx_t_26, __pyx_int_0); __pyx_t_7 = 0; __pyx_t_24 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_34, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6615, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 6615, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_36 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_Rvals.diminfo[0].strides) = __pyx_t_35;
+6616: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_37 = (__pyx_v_p + __pyx_v_count);
__pyx_t_38 = 0;
__pyx_t_39 = __pyx_v_xt;
__pyx_t_40 = __pyx_v_yt;
__pyx_t_41 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_38, __pyx_pybuffernd_col.diminfo[1].strides));
+6617: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_42 = (__pyx_v_p + __pyx_v_count);
__pyx_t_43 = 1;
__pyx_t_44 = __pyx_v_xt;
__pyx_t_45 = __pyx_v_yt;
__pyx_t_46 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+6618: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_47 = (__pyx_v_p + __pyx_v_count);
__pyx_t_48 = 2;
__pyx_t_49 = __pyx_v_xt;
__pyx_t_50 = __pyx_v_yt;
__pyx_t_51 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+6619: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6620: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6621: else:
+6622: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_25 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L15_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L15_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L15_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
}
__pyx_L6:;
+6623: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_7 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_26 = 1; } } __pyx_t_5 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_26, __pyx_t_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_26, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_26, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_5, 5+__pyx_t_26, __pyx_t_24); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 6+__pyx_t_26, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_8 = 0; __pyx_t_24 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 6623, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_34 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_34 = PyList_GET_ITEM(sequence, 0); __pyx_t_5 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(__pyx_t_5); #else __pyx_t_34 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_24 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_52 = Py_TYPE(__pyx_t_24)->tp_iternext; index = 0; __pyx_t_34 = __pyx_t_52(__pyx_t_24); if (unlikely(!__pyx_t_34)) goto __pyx_L18_unpacking_failed; __Pyx_GOTREF(__pyx_t_34); index = 1; __pyx_t_5 = __pyx_t_52(__pyx_t_24); if (unlikely(!__pyx_t_5)) goto __pyx_L18_unpacking_failed; __Pyx_GOTREF(__pyx_t_5); if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_24), 2) < 0) __PYX_ERR(0, 6623, __pyx_L1_error) __pyx_t_52 = NULL; __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; goto __pyx_L19_unpacking_done; __pyx_L18_unpacking_failed:; __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_t_52 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 6623, __pyx_L1_error) __pyx_L19_unpacking_done:; } if (!(likely(((__pyx_t_34) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_34, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6623, __pyx_L1_error) if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6623, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_34); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6623, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_34)); __pyx_t_34 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6623, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+6624: w = 0
__pyx_v_w = 0;
+6625: count = 0
__pyx_v_count = 0;
+6626: while count < dp:
while (1) {
__pyx_t_23 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_23) break;
+6627: xt = xtrial[w]
__pyx_t_53 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+6628: yt = ytrial[w]
__pyx_t_54 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+6629: if I[xt, yt] == 0:
__pyx_t_55 = __pyx_v_xt;
__pyx_t_56 = __pyx_v_yt;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_55, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_56, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6630: I[xt, yt] = p + count + 1
__pyx_t_57 = __pyx_v_xt;
__pyx_t_58 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_58, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6631: X[p + count] = xt
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6632: Y[p + count] = yt
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6633: a[p + count] = 1
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6634: MAJ[p + count] = 1
__pyx_t_62 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+6635: Rvals[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_8 = __pyx_v_Rfunc; __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_26 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_26); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_26, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_26, __pyx_t_34); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_26, __pyx_t_24); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_26, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_26, __pyx_int_0); __pyx_t_5 = 0; __pyx_t_34 = 0; __pyx_t_24 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_35 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_35 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 6635, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_63 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_Rvals.diminfo[0].strides) = __pyx_t_35;
+6636: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_64 = (__pyx_v_p + __pyx_v_count);
__pyx_t_65 = 0;
__pyx_t_66 = __pyx_v_xt;
__pyx_t_67 = __pyx_v_yt;
__pyx_t_68 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_68, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_65, __pyx_pybuffernd_col.diminfo[1].strides));
+6637: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_69 = (__pyx_v_p + __pyx_v_count);
__pyx_t_70 = 1;
__pyx_t_71 = __pyx_v_xt;
__pyx_t_72 = __pyx_v_yt;
__pyx_t_73 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_73, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_70, __pyx_pybuffernd_col.diminfo[1].strides));
+6638: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_74 = (__pyx_v_p + __pyx_v_count);
__pyx_t_75 = 2;
__pyx_t_76 = __pyx_v_xt;
__pyx_t_77 = __pyx_v_yt;
__pyx_t_78 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_col.diminfo[1].strides));
+6639: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6640: if w < dp - 1:
__pyx_t_23 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L23;
}
+6641: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
6642: else:
+6643: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_24);
__pyx_t_34 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__pyx_t_5 = NULL;
__pyx_t_26 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_5)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_26 = 1;
}
}
__pyx_t_1 = PyTuple_New(7+__pyx_t_26); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_5) {
__Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_26, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_26, __pyx_t_8);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_26, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_24);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_26, __pyx_t_24);
__Pyx_GIVEREF(__pyx_t_34);
PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_26, __pyx_t_34);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 6+__pyx_t_26, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_24 = 0;
__pyx_t_34 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 6643, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_1 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_1);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_34 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6643, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_34);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_52 = Py_TYPE(__pyx_t_34)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_7)) goto __pyx_L24_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_1 = __pyx_t_52(__pyx_t_34); if (unlikely(!__pyx_t_1)) goto __pyx_L24_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_52(__pyx_t_34), 2) < 0) __PYX_ERR(0, 6643, __pyx_L1_error)
__pyx_t_52 = NULL;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
goto __pyx_L25_unpacking_done;
__pyx_L24_unpacking_failed:;
__Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0;
__pyx_t_52 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 6643, __pyx_L1_error)
__pyx_L25_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6643, __pyx_L1_error)
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6643, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_20, &__pyx_t_19);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_19);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_20, __pyx_t_19);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6643, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_19, &__pyx_t_20, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_19); Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_19, __pyx_t_20, __pyx_t_21);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6643, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
+6644: w = 0
__pyx_v_w = 0;
}
__pyx_L23:;
}
+6645: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6646:
6647:
+6648: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+6649: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
6650:
+6651: for k in range(0, p):
__pyx_t_79 = __pyx_v_p;
for (__pyx_t_80 = 0; __pyx_t_80 < __pyx_t_79; __pyx_t_80+=1) {
__pyx_v_k = __pyx_t_80;
+6652: if a[k] == 1:
__pyx_t_81 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_23) {
/* … */
}
}
+6653: a[k] = 0
__pyx_t_82 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+6654: xo = X[k]
__pyx_t_83 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
+6655: yo = Y[k]
__pyx_t_84 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
+6656: Io = I[xo, yo]
__pyx_t_85 = __pyx_v_xo;
__pyx_t_86 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides));
+6657: Maj = MAJ[k]
__pyx_t_87 = __pyx_v_k;
__pyx_v_Maj = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_MAJ.diminfo[0].strides));
+6658: Min = Maj / Rvals[k]
__pyx_t_88 = __pyx_v_k;
__pyx_v_Min = (((__pyx_t_5numpy_float64_t)__pyx_v_Maj) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_Rvals.diminfo[0].strides)));
+6659: MAJceil = math.ceil(Maj)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_Maj); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_34 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_34) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6659, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_24 = PyTuple_New(1+1); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_24, 0, __pyx_t_34); __pyx_t_34 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_24, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_24, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_89 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_89 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6659, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_MAJceil = __pyx_t_89;
+6660: MINceil = math.ceil(Min)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_24 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ceil); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_Min); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_24))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_24); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_24); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_24, function); } } if (!__pyx_t_1) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_24, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6660, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_34 = PyTuple_New(1+1); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_34, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_34, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_24, __pyx_t_34, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; } __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_t_89 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_89 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6660, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_MINceil = __pyx_t_89;
+6661: red = col[k, 0]
__pyx_t_89 = __pyx_v_k;
__pyx_t_90 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_col.diminfo[1].strides));
+6662: green = col[k, 1]
__pyx_t_91 = __pyx_v_k;
__pyx_t_92 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_92, __pyx_pybuffernd_col.diminfo[1].strides));
+6663: blue = col[k, 2]
__pyx_t_93 = __pyx_v_k;
__pyx_t_94 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_col.diminfo[1].strides));
6664:
+6665: for deli in range(MAJceil + 1):
__pyx_t_95 = (__pyx_v_MAJceil + 1);
for (__pyx_t_96 = 0; __pyx_t_96 < __pyx_t_95; __pyx_t_96+=1) {
__pyx_v_deli = __pyx_t_96;
+6666: for delj in range(MINceil + 1):
__pyx_t_97 = (__pyx_v_MINceil + 1);
for (__pyx_t_98 = 0; __pyx_t_98 < __pyx_t_97; __pyx_t_98+=1) {
__pyx_v_delj = __pyx_t_98;
+6667: if (deli / Maj) ** 2 + (delj / Min) ** 2 < 1:
__pyx_t_23 = (((powf((((float)__pyx_v_deli) / __pyx_v_Maj), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_23) {
/* … */
}
}
}
+6668: i, j = xo + deli, yo + delj
__pyx_t_99 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_100 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_99;
__pyx_v_j = __pyx_t_100;
+6669: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L35_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L35_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6670: if I[i, j] == 0:
__pyx_t_100 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6671: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L38;
}
+6672: PN = I[i - 1, j]
__pyx_t_102 = (__pyx_v_i - 1);
__pyx_t_103 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_103, __pyx_pybuffernd_I.diminfo[1].strides));
6673: else:
+6674: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L38:;
+6675: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L39;
}
+6676: PW = I[i, j - 1]
__pyx_t_104 = __pyx_v_i;
__pyx_t_105 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_I.diminfo[1].strides));
6677: else:
+6678: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L39:;
+6679: if PN == Io or PW == Io:
__pyx_t_25 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L41_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_PW == __pyx_v_Io) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L41_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6680: I[i, j] = Io
__pyx_t_106 = __pyx_v_i;
__pyx_t_107 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6681: Col[i, j, 2] = red
__pyx_t_108 = __pyx_v_i;
__pyx_t_109 = __pyx_v_j;
__pyx_t_110 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6682: Col[i, j, 1] = green
__pyx_t_111 = __pyx_v_i;
__pyx_t_112 = __pyx_v_j;
__pyx_t_113 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6683: Col[i, j, 0] = blue
__pyx_t_114 = __pyx_v_i;
__pyx_t_115 = __pyx_v_j;
__pyx_t_116 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_115, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6684: a[k] = 1
__pyx_t_117 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6685:
+6686: i, j = xo - deli, yo + delj
__pyx_t_118 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_119 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_118;
__pyx_v_j = __pyx_t_119;
+6687: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L44_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L44_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6688: if I[i, j] == 0:
__pyx_t_119 = __pyx_v_i;
__pyx_t_118 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_118, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6689: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L47;
}
+6690: PS = I[i + 1, j]
__pyx_t_120 = (__pyx_v_i + 1);
__pyx_t_121 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_121, __pyx_pybuffernd_I.diminfo[1].strides));
6691: else:
+6692: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L47:;
+6693: if j > 0:
__pyx_t_23 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L48;
}
+6694: PW = I[i, j - 1]
__pyx_t_122 = __pyx_v_i;
__pyx_t_123 = (__pyx_v_j - 1);
__pyx_v_PW = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_I.diminfo[1].strides));
6695: else:
+6696: PW = 0
/*else*/ {
__pyx_v_PW = 0;
}
__pyx_L48:;
+6697: if PW == Io or PS == Io:
__pyx_t_25 = ((__pyx_v_PW == __pyx_v_Io) != 0);
if (!__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L50_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L50_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6698: I[i, j] = Io
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6699: Col[i, j, 2] = red
__pyx_t_126 = __pyx_v_i;
__pyx_t_127 = __pyx_v_j;
__pyx_t_128 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6700: Col[i, j, 1] = green
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = __pyx_v_j;
__pyx_t_131 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6701: Col[i, j, 0] = blue
__pyx_t_132 = __pyx_v_i;
__pyx_t_133 = __pyx_v_j;
__pyx_t_134 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6702: a[k] = 1
__pyx_t_135 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6703:
+6704: i, j = xo - deli, yo - delj
__pyx_t_136 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_137 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_136;
__pyx_v_j = __pyx_t_137;
+6705: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L53_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6706: if I[i, j] == 0:
__pyx_t_137 = __pyx_v_i;
__pyx_t_136 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6707: if i < m - 1:
__pyx_t_23 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L56;
}
+6708: PS = I[i + 1, j]
__pyx_t_138 = (__pyx_v_i + 1);
__pyx_t_139 = __pyx_v_j;
__pyx_v_PS = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_139, __pyx_pybuffernd_I.diminfo[1].strides));
6709: else:
+6710: PS = 0
/*else*/ {
__pyx_v_PS = 0;
}
__pyx_L56:;
+6711: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L57;
}
+6712: PE = I[i, j + 1]
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_I.diminfo[1].strides));
6713: else:
+6714: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L57:;
+6715: if PE == Io or PS == Io:
__pyx_t_25 = ((__pyx_v_PE == __pyx_v_Io) != 0);
if (!__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L59_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_PS == __pyx_v_Io) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L59_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6716: I[i, j] = Io
__pyx_t_142 = __pyx_v_i;
__pyx_t_143 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_143, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6717: Col[i, j, 2] = red
__pyx_t_144 = __pyx_v_i;
__pyx_t_145 = __pyx_v_j;
__pyx_t_146 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6718: Col[i, j, 1] = green
__pyx_t_147 = __pyx_v_i;
__pyx_t_148 = __pyx_v_j;
__pyx_t_149 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_149, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6719: Col[i, j, 0] = blue
__pyx_t_150 = __pyx_v_i;
__pyx_t_151 = __pyx_v_j;
__pyx_t_152 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6720: a[k] = 1
__pyx_t_153 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6721:
+6722: i, j = xo + deli, yo - delj
__pyx_t_154 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_155 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_154;
__pyx_v_j = __pyx_t_155;
+6723: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_25 = (0 <= __pyx_v_i);
if (__pyx_t_25) {
__pyx_t_25 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_101 = (__pyx_t_25 != 0);
if (__pyx_t_101) {
} else {
__pyx_t_23 = __pyx_t_101;
goto __pyx_L62_bool_binop_done;
}
__pyx_t_101 = (0 <= __pyx_v_j);
if (__pyx_t_101) {
__pyx_t_101 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_25 = (__pyx_t_101 != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L62_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6724: if I[i, j] == 0:
__pyx_t_155 = __pyx_v_i;
__pyx_t_154 = __pyx_v_j;
__pyx_t_23 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_154, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6725: if i > 0:
__pyx_t_23 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L65;
}
+6726: PN = I[i - 1, j]
__pyx_t_156 = (__pyx_v_i - 1);
__pyx_t_157 = __pyx_v_j;
__pyx_v_PN = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_157, __pyx_pybuffernd_I.diminfo[1].strides));
6727: else:
+6728: PN = 0
/*else*/ {
__pyx_v_PN = 0;
}
__pyx_L65:;
+6729: if j < n - 1:
__pyx_t_23 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_23) {
/* … */
goto __pyx_L66;
}
+6730: PE = I[i, j + 1]
__pyx_t_158 = __pyx_v_i;
__pyx_t_159 = (__pyx_v_j + 1);
__pyx_v_PE = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_159, __pyx_pybuffernd_I.diminfo[1].strides));
6731: else:
+6732: PE = 0
/*else*/ {
__pyx_v_PE = 0;
}
__pyx_L66:;
+6733: if PN == Io or PE == Io:
__pyx_t_25 = ((__pyx_v_PN == __pyx_v_Io) != 0);
if (!__pyx_t_25) {
} else {
__pyx_t_23 = __pyx_t_25;
goto __pyx_L68_bool_binop_done;
}
__pyx_t_25 = ((__pyx_v_PE == __pyx_v_Io) != 0);
__pyx_t_23 = __pyx_t_25;
__pyx_L68_bool_binop_done:;
if (__pyx_t_23) {
/* … */
}
+6734: I[i, j] = Io
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6735: Col[i, j, 2] = red
__pyx_t_162 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_164 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6736: Col[i, j, 1] = green
__pyx_t_165 = __pyx_v_i;
__pyx_t_166 = __pyx_v_j;
__pyx_t_167 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_167, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6737: Col[i, j, 0] = blue
__pyx_t_168 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_170 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6738: a[k] = 1
__pyx_t_171 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
6739:
+6740: if a[k] == 0:
__pyx_t_95 = __pyx_v_k;
__pyx_t_23 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_23) {
/* … */
}
+6741: xmin = max(0, xo - MAJceil)
__pyx_t_96 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_172 = 0;
if (((__pyx_t_96 > __pyx_t_172) != 0)) {
__pyx_t_97 = __pyx_t_96;
} else {
__pyx_t_97 = __pyx_t_172;
}
__pyx_v_xmin = __pyx_t_97;
+6742: xmax = min(m - 1, xo + MAJceil)
__pyx_t_97 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_96 = (__pyx_v_m - 1);
if (((__pyx_t_97 < __pyx_t_96) != 0)) {
__pyx_t_98 = __pyx_t_97;
} else {
__pyx_t_98 = __pyx_t_96;
}
__pyx_v_xmax = __pyx_t_98;
+6743: ymin = max(0, yo - MINceil)
__pyx_t_98 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_172 = 0;
if (((__pyx_t_98 > __pyx_t_172) != 0)) {
__pyx_t_97 = __pyx_t_98;
} else {
__pyx_t_97 = __pyx_t_172;
}
__pyx_v_ymin = __pyx_t_97;
+6744: ymax = min(n - 1, yo + MINceil)
__pyx_t_97 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_98 = (__pyx_v_n - 1);
if (((__pyx_t_97 < __pyx_t_98) != 0)) {
__pyx_t_96 = __pyx_t_97;
} else {
__pyx_t_96 = __pyx_t_98;
}
__pyx_v_ymax = __pyx_t_96;
+6745: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_96 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
6746:
6747:
+6748: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+6749: for i in range(p):
__pyx_t_79 = __pyx_v_p;
for (__pyx_t_80 = 0; __pyx_t_80 < __pyx_t_79; __pyx_t_80+=1) {
__pyx_v_i = __pyx_t_80;
+6750: MAJ[i] = MAJ[i] + 1
__pyx_t_97 = __pyx_v_i;
__pyx_t_98 = __pyx_v_i;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + 1);
}
+6751: nnz = cv2.countNonZero(I)
__pyx_t_24 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_24, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_t_24 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_24 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_24)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_24); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); } } if (!__pyx_t_24) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_34, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_24); __pyx_t_24 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_7, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_79 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_79 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6751, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_nnz = __pyx_t_79; }
6752:
+6753: obj.p = p
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6753, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_6) < 0) __PYX_ERR(0, 6753, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6754: toc = time.time()
__pyx_t_34 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_34, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6754, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_34 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_34 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_34)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_34); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_34) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_34); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6754, __pyx_L1_error) __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; } else { __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6754, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_22 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_22 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6754, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_toc = __pyx_t_22;
+6755: obj.exetime = toc - tic
__pyx_t_6 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6755, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_6) < 0) __PYX_ERR(0, 6755, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6756: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_34 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_delete); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_24 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_24, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; __pyx_t_24 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_26 = 1; } } __pyx_t_173 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_173)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_173); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_173, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_173, 0+__pyx_t_26, __pyx_t_24); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_173, 1+__pyx_t_26, __pyx_t_8); __pyx_t_24 = 0; __pyx_t_8 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_173, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_173); __pyx_t_173 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_34))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_34); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_34); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_34, function); __pyx_t_26 = 1; } } __pyx_t_173 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_173)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_173); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_173, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_173, 0+__pyx_t_26, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_173, 1+__pyx_t_26, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_34, __pyx_t_173, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_173); __pyx_t_173 = 0; __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_6) < 0) __PYX_ERR(0, 6756, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6757: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_34 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __pyx_t_173 = __Pyx_PyObject_GetAttrStr(__pyx_t_34, __pyx_n_s_delete); if (unlikely(!__pyx_t_173)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_173); __Pyx_DECREF(__pyx_t_34); __pyx_t_34 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_24 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_24 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_24)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_24); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_26 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_24) { __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_24); __pyx_t_24 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_t_8); __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_34 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_34)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_34); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_26 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_173))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_173); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_173); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_173, function); __pyx_t_26 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_26); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_26, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_34); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_26, __pyx_t_34); __pyx_t_34 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_173, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_173); __pyx_t_173 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_6) < 0) __PYX_ERR(0, 6757, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+6758: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 6758, __pyx_L1_error)
+6759: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 6759, __pyx_L1_error)
+6760: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
6761:
6762:
6763:
+6764: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_51Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_51Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_51Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_51Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_50Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_50Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_R;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_MN;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_imin;
PY_LONG_LONG __pyx_v_imax;
PY_LONG_LONG __pyx_v_jmin;
PY_LONG_LONG __pyx_v_jmax;
PY_LONG_LONG __pyx_v_io;
PY_LONG_LONG __pyx_v_jo;
PY_LONG_LONG __pyx_v_go;
PY_LONG_LONG __pyx_v_found;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_l1;
PY_LONG_LONG __pyx_v_l2;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_adotValmax;
float __pyx_v_tmp;
float __pyx_v_MIN;
float __pyx_v_dr;
float __pyx_v_t;
float __pyx_v_dt;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_II = 0;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
PyObject *__pyx_v_f = NULL;
PyObject *__pyx_v_w = NULL;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_II;
__Pyx_Buffer __pyx_pybuffer_II;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_II.pybuffer.buf = NULL;
__pyx_pybuffer_II.refcount = 0;
__pyx_pybuffernd_II.data = NULL;
__pyx_pybuffernd_II.rcbuffer = &__pyx_pybuffer_II;
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_35);
__Pyx_XDECREF(__pyx_t_585);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_II);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XDECREF(__pyx_v_f);
__Pyx_XDECREF(__pyx_v_w);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__61 = PyTuple_Pack(80, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_R, __pyx_n_s_fstop, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_MN, __pyx_n_s_fd, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_pdelNxy, __pyx_n_s_Adotfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_imin, __pyx_n_s_imax, __pyx_n_s_jmin, __pyx_n_s_jmax, __pyx_n_s_io, __pyx_n_s_jo, __pyx_n_s_go, __pyx_n_s_found, __pyx_n_s_dum, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_count, __pyx_n_s_l1, __pyx_n_s_l2, __pyx_n_s_countim, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_nnz, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_dp, __pyx_n_s_p, __pyx_n_s_Iter, __pyx_n_s_adotValmax, __pyx_n_s_tmp, __pyx_n_s_MIN, __pyx_n_s_dr, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_t, __pyx_n_s_dt, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_adotVal, __pyx_n_s_II, __pyx_n_s_MAJ, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_f, __pyx_n_s_w); if (unlikely(!__pyx_tuple__61)) __PYX_ERR(0, 6764, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__61);
__Pyx_GIVEREF(__pyx_tuple__61);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_51Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_without_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6764, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_8, __pyx_t_2) < 0) __PYX_ERR(0, 6764, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__62 = (PyObject*)__Pyx_PyCode_New(1, 0, 80, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__61, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_8, 6764, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__62)) __PYX_ERR(0, 6764, __pyx_L1_error)
6765: # Grabbing data from the input object
+6766: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6766, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6766, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+6767: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6767, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6767, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+6768: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6768, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6768, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+6769: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6769, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6769, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+6770: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6770, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6770, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+6771: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6771, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6771, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+6772: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6772, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+6773: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 6773, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+6774: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+6775: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6775, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+6776: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6776, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+6777: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6777, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+6778: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6778, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+6779: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6779, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
6780:
6781:
6782: # Declaring other variables
6783: cdef double tic, toc
6784: cdef long long deli, delj, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, imin, imax, jmin, jmax, io, jo, go, found, dum, i, j, k, xo, yo, count, l1, l2, countim, MAJceil, MINceil, nnz, xt, yt, dp, p, Iter
6785: cdef float adotValmax, tmp, MIN, dr, theta, c, s, t, dt, red, green, blue
+6786: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6786, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6786, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6787: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ones); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6787, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6787, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6788: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6788, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6788, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6788, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6789: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6789, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6789, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6789, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6790: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(MN, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6790, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6790, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6790, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6791: cdef np.ndarray[np.int_t, ndim = 2] II = np.zeros((m, n), dtype=np.int)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6791, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6791, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_II = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_II.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6791, __pyx_L1_error) } else {__pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; } } __pyx_t_14 = 0; __pyx_v_II = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6792: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6792, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6792, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+6793: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6793, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6793, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6793, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+6794: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6794, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6794, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6794, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6795: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6795, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6795, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6795, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_18 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+6796: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6796, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6796, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 6796, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_19 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+6797: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6797, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6797, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6797, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6797, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6797, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+6798: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6798, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6798, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6798, __pyx_L1_error) } __pyx_t_19 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+6799: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6799, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6799, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6799, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6799, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 6799, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_tic = __pyx_t_23;
6800:
6801:
+6802: countim = 1
__pyx_v_countim = 1;
+6803: count = 0
__pyx_v_count = 0;
+6804: nnz = 0
__pyx_v_nnz = 0;
+6805: t = 0
__pyx_v_t = 0.0;
+6806: p = 0
__pyx_v_p = 0;
+6807: Iter = 1
__pyx_v_Iter = 1;
+6808: while nnz < MN:
while (1) {
__pyx_t_24 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_24) break;
+6809: f = nnz / MN
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_nnz / __pyx_v_MN)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6809, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_XDECREF_SET(__pyx_v_f, __pyx_t_5); __pyx_t_5 = 0;
+6810: dt = 1.0 / Gt(t)
__pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6810, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6810, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6810, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6810, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_5, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6810, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 6810, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+6811: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = __Pyx_PyInt_SubtractCObj(__pyx_int_1, __pyx_v_f, 1, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_8 = __pyx_v_Ndot; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyNumber_Multiply(__pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6811, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_dp = __pyx_t_2;
+6812: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+6813: if pdelNxy == []:
__pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6813, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6813, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_24 < 0)) __PYX_ERR(0, 6813, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_24) { /* … */ goto __pyx_L5; }
+6814: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L7_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+6815: count = 0
__pyx_v_count = 0;
+6816: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+6817: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6817, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6817, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6817, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6817, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_7 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6817, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_27, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6817, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6817, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+6818: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6818, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6818, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6818, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6818, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6818, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_25, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6818, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6818, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+6819: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+6820: I[xt, yt] = p + count + 1
__pyx_t_29 = __pyx_v_xt;
__pyx_t_30 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6821: X[p + count] = xt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6822: Y[p + count] = yt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6823: a[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6824: MAJ[p + count] = 1
__pyx_t_34 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+6825: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6825, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6825, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6825, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_8 = __pyx_v_Adotfunc; __pyx_t_1 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_35 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 6825, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_35, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_35, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_35, 2+__pyx_t_27, __pyx_t_7); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_35, 3+__pyx_t_27, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_35, 4+__pyx_t_27, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_35, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6825, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 6825, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_37 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_36;
+6826: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_38 = (__pyx_v_p + __pyx_v_count);
__pyx_t_39 = 0;
__pyx_t_40 = __pyx_v_xt;
__pyx_t_41 = __pyx_v_yt;
__pyx_t_42 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_39, __pyx_pybuffernd_col.diminfo[1].strides));
+6827: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_43 = (__pyx_v_p + __pyx_v_count);
__pyx_t_44 = 1;
__pyx_t_45 = __pyx_v_xt;
__pyx_t_46 = __pyx_v_yt;
__pyx_t_47 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_47, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_col.diminfo[1].strides));
+6828: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_48 = (__pyx_v_p + __pyx_v_count);
__pyx_t_49 = 2;
__pyx_t_50 = __pyx_v_xt;
__pyx_t_51 = __pyx_v_yt;
__pyx_t_52 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_52, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_49, __pyx_pybuffernd_col.diminfo[1].strides));
+6829: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6830: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6831: else:
+6832: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
/*else*/ {
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L14_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
}
__pyx_L5:;
+6833: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_35); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_35, function); __pyx_t_27 = 1; } } __pyx_t_1 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_27, __pyx_t_8); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_1, 6+__pyx_t_27, __pyx_int_1); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_25 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 6833, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_35 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_35 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_35 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_25 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_53 = Py_TYPE(__pyx_t_25)->tp_iternext; index = 0; __pyx_t_35 = __pyx_t_53(__pyx_t_25); if (unlikely(!__pyx_t_35)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_35); index = 1; __pyx_t_1 = __pyx_t_53(__pyx_t_25); if (unlikely(!__pyx_t_1)) goto __pyx_L17_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_53(__pyx_t_25), 2) < 0) __PYX_ERR(0, 6833, __pyx_L1_error) __pyx_t_53 = NULL; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; goto __pyx_L18_unpacking_done; __pyx_L17_unpacking_failed:; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_53 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 6833, __pyx_L1_error) __pyx_L18_unpacking_done:; } if (!(likely(((__pyx_t_35) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_35, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6833, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6833, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_35); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6833, __pyx_L1_error) } __pyx_t_16 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_35)); __pyx_t_35 = 0; __pyx_t_17 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6833, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+6834: w = 0
__Pyx_INCREF(__pyx_int_0); __Pyx_XDECREF_SET(__pyx_v_w, __pyx_int_0);
+6835: count = 0
__pyx_v_count = 0;
+6836: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+6837: xt = xtrial[w]
__pyx_t_6 = PyObject_GetItem(((PyObject *)__pyx_v_xtrial), __pyx_v_w); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6837, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_54 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_54 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6837, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_54;
+6838: yt = ytrial[w]
__pyx_t_6 = PyObject_GetItem(((PyObject *)__pyx_v_ytrial), __pyx_v_w); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6838, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_54 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_54 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6838, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_54;
+6839: if I[xt, yt] == 0:
__pyx_t_54 = __pyx_v_xt;
__pyx_t_55 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6840: I[xt, yt] = p + count + 1
__pyx_t_56 = __pyx_v_xt;
__pyx_t_57 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_57, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+6841: X[p + count] = xt
__pyx_t_58 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+6842: Y[p + count] = yt
__pyx_t_59 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+6843: a[p + count] = 1
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6844: MAJ[p + count] = 1
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+6845: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 6845, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 6845, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6845, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_7 = __pyx_v_Adotfunc; __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6845, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_35); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_27, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_27, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_35 = 0; __pyx_t_25 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6845, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 6845, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_62 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_36;
+6846: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_63 = (__pyx_v_p + __pyx_v_count);
__pyx_t_64 = 0;
__pyx_t_65 = __pyx_v_xt;
__pyx_t_66 = __pyx_v_yt;
__pyx_t_67 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_66, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_67, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_col.diminfo[1].strides));
+6847: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_68 = (__pyx_v_p + __pyx_v_count);
__pyx_t_69 = 1;
__pyx_t_70 = __pyx_v_xt;
__pyx_t_71 = __pyx_v_yt;
__pyx_t_72 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_69, __pyx_pybuffernd_col.diminfo[1].strides));
+6848: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_73 = (__pyx_v_p + __pyx_v_count);
__pyx_t_74 = 2;
__pyx_t_75 = __pyx_v_xt;
__pyx_t_76 = __pyx_v_yt;
__pyx_t_77 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
+6849: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6850: if w < dp - 1:
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_dp - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6850, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyObject_RichCompare(__pyx_v_w, __pyx_t_6, Py_LT); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6850, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_24 < 0)) __PYX_ERR(0, 6850, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_24) { /* … */ goto __pyx_L22; }
+6851: w = w + 1
__pyx_t_7 = __Pyx_PyInt_AddObjC(__pyx_v_w, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6851, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF_SET(__pyx_v_w, __pyx_t_7); __pyx_t_7 = 0;
6852: else:
+6853: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
__pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__pyx_t_1 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
__pyx_t_27 = 1;
}
}
__pyx_t_8 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_6);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_25);
PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_27, __pyx_t_25);
__Pyx_GIVEREF(__pyx_t_35);
PyTuple_SET_ITEM(__pyx_t_8, 5+__pyx_t_27, __pyx_t_35);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_8, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_6 = 0;
__pyx_t_25 = 0;
__pyx_t_35 = 0;
__pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
PyObject* sequence = __pyx_t_7;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 6853, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_5 = PyList_GET_ITEM(sequence, 0);
__pyx_t_8 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_8);
#else
__pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_35 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 6853, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_53 = Py_TYPE(__pyx_t_35)->tp_iternext;
index = 0; __pyx_t_5 = __pyx_t_53(__pyx_t_35); if (unlikely(!__pyx_t_5)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
index = 1; __pyx_t_8 = __pyx_t_53(__pyx_t_35); if (unlikely(!__pyx_t_8)) goto __pyx_L23_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_53(__pyx_t_35), 2) < 0) __PYX_ERR(0, 6853, __pyx_L1_error)
__pyx_t_53 = NULL;
__Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
goto __pyx_L24_unpacking_done;
__pyx_L23_unpacking_failed:;
__Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
__pyx_t_53 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 6853, __pyx_L1_error)
__pyx_L24_unpacking_done:;
}
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6853, __pyx_L1_error)
if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 6853, __pyx_L1_error)
__pyx_t_16 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6853, __pyx_L1_error)
}
__pyx_t_16 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
__pyx_t_17 = ((PyArrayObject *)__pyx_t_8);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 6853, __pyx_L1_error)
}
__pyx_t_17 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_8));
__pyx_t_8 = 0;
+6854: w = 0
__Pyx_INCREF(__pyx_int_0); __Pyx_DECREF_SET(__pyx_v_w, __pyx_int_0); } __pyx_L22:; }
+6855: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
6856:
6857:
+6858: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+6859: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
6860:
+6861: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+6862: for i in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_i = __pyx_t_79;
+6863: if a[i] == 1:
__pyx_t_80 = __pyx_v_i;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+6864: tmp = adotVal[i]
__pyx_t_81 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_81, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+6865: if tmp > adotValmax:
__pyx_t_24 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_24) {
/* … */
}
+6866: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
6867:
+6868: for k in range(0, p):
__pyx_t_78 = __pyx_v_p;
for (__pyx_t_79 = 0; __pyx_t_79 < __pyx_t_78; __pyx_t_79+=1) {
__pyx_v_k = __pyx_t_79;
+6869: if a[k] == 1:
__pyx_t_82 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+6870: a[k] = 0
__pyx_t_83 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+6871: xo = X[k]
__pyx_t_84 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_X.diminfo[0].strides));
+6872: yo = Y[k]
__pyx_t_85 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_Y.diminfo[0].strides));
+6873: Io = I[xo, yo]
__pyx_t_86 = __pyx_v_xo;
__pyx_t_87 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_I.diminfo[1].strides));
6874:
+6875: dr = adotVal[k] / adotValmax
__pyx_t_88 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+6876: MAJ[k] = MAJ[k] + dr
__pyx_t_89 = __pyx_v_k;
__pyx_t_90 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+6877: MIN = MAJ[k] / R
__pyx_t_91 = __pyx_v_k;
__pyx_v_MIN = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_MAJ.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_R));
+6878: MAJceil = math.ceil(MAJ[k])
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6878, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ceil); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6878, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_92 = __pyx_v_k; __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_MAJ.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 6878, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_35 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_35 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_35)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_35) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6878, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6878, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_35); __pyx_t_35 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6878, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_93 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_7); if (unlikely((__pyx_t_93 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6878, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_MAJceil = __pyx_t_93;
+6879: MINceil = math.ceil(MIN)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6879, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ceil); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 6879, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 6879, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); } } if (!__pyx_t_8) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_25, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6879, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_35 = PyTuple_New(1+1); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 6879, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_35, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_35, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 6879, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; } __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_93 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_7); if (unlikely((__pyx_t_93 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 6879, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_MINceil = __pyx_t_93;
+6880: red = col[k, 0]
__pyx_t_93 = __pyx_v_k;
__pyx_t_94 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_94, __pyx_pybuffernd_col.diminfo[1].strides));
+6881: green = col[k, 1]
__pyx_t_95 = __pyx_v_k;
__pyx_t_96 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_96, __pyx_pybuffernd_col.diminfo[1].strides));
+6882: blue = col[k, 2]
__pyx_t_97 = __pyx_v_k;
__pyx_t_98 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_98, __pyx_pybuffernd_col.diminfo[1].strides));
6883:
+6884: imin, imax, jmin, jmax = xo, xo, yo, yo
__pyx_t_99 = __pyx_v_xo;
__pyx_t_100 = __pyx_v_xo;
__pyx_t_101 = __pyx_v_yo;
__pyx_t_102 = __pyx_v_yo;
__pyx_v_imin = __pyx_t_99;
__pyx_v_imax = __pyx_t_100;
__pyx_v_jmin = __pyx_t_101;
__pyx_v_jmax = __pyx_t_102;
6885:
+6886: for deli in range(0, MAJceil + 1):
__pyx_t_102 = (__pyx_v_MAJceil + 1);
for (__pyx_t_101 = 0; __pyx_t_101 < __pyx_t_102; __pyx_t_101+=1) {
__pyx_v_deli = __pyx_t_101;
+6887: for delj in range(0, MINceil + 1):
__pyx_t_100 = (__pyx_v_MINceil + 1);
for (__pyx_t_99 = 0; __pyx_t_99 < __pyx_t_100; __pyx_t_99+=1) {
__pyx_v_delj = __pyx_t_99;
+6888: if (deli / MAJ[k]) ** 2 + (delj / MIN) ** 2 <= 1:
__pyx_t_103 = __pyx_v_k;
__pyx_t_24 = (((pow((((__pyx_t_5numpy_float64_t)__pyx_v_deli) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_24) {
/* … */
}
}
}
+6889: for l1 in range(-1, 2, 2):
for (__pyx_t_104 = -1L; __pyx_t_104 < 2; __pyx_t_104+=2) {
__pyx_v_l1 = __pyx_t_104;
+6890: for l2 in range(-1, 2, 2):
for (__pyx_t_105 = -1L; __pyx_t_105 < 2; __pyx_t_105+=2) {
__pyx_v_l2 = __pyx_t_105;
+6891: i, j = xo + l1 * deli, yo + l2 * delj
__pyx_t_106 = (__pyx_v_xo + (__pyx_v_l1 * __pyx_v_deli));
__pyx_t_107 = (__pyx_v_yo + (__pyx_v_l2 * __pyx_v_delj));
__pyx_v_i = __pyx_t_106;
__pyx_v_j = __pyx_t_107;
+6892: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_108 = (__pyx_t_26 != 0);
if (__pyx_t_108) {
} else {
__pyx_t_24 = __pyx_t_108;
goto __pyx_L42_bool_binop_done;
}
__pyx_t_108 = (0 <= __pyx_v_j);
if (__pyx_t_108) {
__pyx_t_108 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_108 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L42_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
}
}
+6893: if I[i, j] == 0:
__pyx_t_107 = __pyx_v_i;
__pyx_t_106 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_106, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6894: II[i, j] = Io
__pyx_t_109 = __pyx_v_i;
__pyx_t_110 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_II.diminfo[1].strides) = __pyx_v_Io;
+6895: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+6896: if i > imax:
__pyx_t_24 = ((__pyx_v_i > __pyx_v_imax) != 0);
if (__pyx_t_24) {
/* … */
}
+6897: imax = i
__pyx_v_imax = __pyx_v_i;
+6898: if i < imin:
__pyx_t_24 = ((__pyx_v_i < __pyx_v_imin) != 0);
if (__pyx_t_24) {
/* … */
}
+6899: imin = i
__pyx_v_imin = __pyx_v_i;
+6900: if j > jmax:
__pyx_t_24 = ((__pyx_v_j > __pyx_v_jmax) != 0);
if (__pyx_t_24) {
/* … */
}
+6901: jmax = j
__pyx_v_jmax = __pyx_v_j;
+6902: if j < jmin:
__pyx_t_24 = ((__pyx_v_j < __pyx_v_jmin) != 0);
if (__pyx_t_24) {
/* … */
}
+6903: jmin = j
__pyx_v_jmin = __pyx_v_j;
6904:
+6905: if count > 0:
__pyx_t_24 = ((__pyx_v_count > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6906: i = imin
__pyx_v_i = __pyx_v_imin;
+6907: go = 1
__pyx_v_go = 1;
+6908: found = 0
__pyx_v_found = 0;
+6909: while go is True:
while (1) {
__pyx_t_24 = ((__pyx_v_go == 1) != 0);
if (!__pyx_t_24) break;
+6910: for j in range(jmin, jmax + 1, 1):
__pyx_t_102 = (__pyx_v_jmax + 1);
for (__pyx_t_101 = __pyx_v_jmin; __pyx_t_101 < __pyx_t_102; __pyx_t_101+=1) {
__pyx_v_j = __pyx_t_101;
+6911: if II[i, j] == Io:
__pyx_t_100 = __pyx_v_i;
__pyx_t_99 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L53_break:;
+6912: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6913: if I[i - 1, j] == Io:
__pyx_t_104 = (__pyx_v_i - 1);
__pyx_t_105 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6914: io, jo = i, j
__pyx_t_111 = __pyx_v_i;
__pyx_t_112 = __pyx_v_j;
__pyx_v_io = __pyx_t_111;
__pyx_v_jo = __pyx_t_112;
+6915: go = 0
__pyx_v_go = 0;
+6916: found = 1
__pyx_v_found = 1;
+6917: break
goto __pyx_L53_break;
+6918: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6919: if I[i, j - 1] == Io:
__pyx_t_112 = __pyx_v_i;
__pyx_t_111 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_111, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6920: io, jo = i, j
__pyx_t_113 = __pyx_v_i;
__pyx_t_114 = __pyx_v_j;
__pyx_v_io = __pyx_t_113;
__pyx_v_jo = __pyx_t_114;
+6921: go = 0
__pyx_v_go = 0;
+6922: found = 1
__pyx_v_found = 1;
+6923: break
goto __pyx_L53_break;
6924:
+6925: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+6926: if I[i, j + 1] == Io:
__pyx_t_114 = __pyx_v_i;
__pyx_t_113 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6927: io, jo = i, j
__pyx_t_115 = __pyx_v_i;
__pyx_t_116 = __pyx_v_j;
__pyx_v_io = __pyx_t_115;
__pyx_v_jo = __pyx_t_116;
+6928: go = 0
__pyx_v_go = 0;
+6929: found = 1
__pyx_v_found = 1;
+6930: break
goto __pyx_L53_break;
6931:
6932:
+6933: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+6934: if I[i + 1, j] == Io:
__pyx_t_116 = (__pyx_v_i + 1);
__pyx_t_115 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_115, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6935: io, jo = i, j
__pyx_t_117 = __pyx_v_i;
__pyx_t_118 = __pyx_v_j;
__pyx_v_io = __pyx_t_117;
__pyx_v_jo = __pyx_t_118;
+6936: go = 0
__pyx_v_go = 0;
+6937: found = 1
__pyx_v_found = 1;
+6938: break
goto __pyx_L53_break;
+6939: i = i + 1
__pyx_v_i = (__pyx_v_i + 1);
+6940: if i == imax + 1:
__pyx_t_24 = ((__pyx_v_i == (__pyx_v_imax + 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
+6941: go = 0
__pyx_v_go = 0;
6942:
+6943: if found == 1:
__pyx_t_24 = ((__pyx_v_found == 1) != 0);
if (__pyx_t_24) {
/* … */
}
6944:
6945: # OUTWARD
+6946: for i in range(io, imax + 1):
__pyx_t_102 = (__pyx_v_imax + 1);
for (__pyx_t_101 = __pyx_v_io; __pyx_t_101 < __pyx_t_102; __pyx_t_101+=1) {
__pyx_v_i = __pyx_t_101;
+6947: for j in range(jo, jmax + 1):
__pyx_t_118 = (__pyx_v_jmax + 1);
for (__pyx_t_117 = __pyx_v_jo; __pyx_t_117 < __pyx_t_118; __pyx_t_117+=1) {
__pyx_v_j = __pyx_t_117;
+6948: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+6949: if II[i, j] == Io:
__pyx_t_120 = __pyx_v_i;
__pyx_t_121 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_121, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L70_break:;
}
+6950: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6951: if I[i - 1, j] == Io:
__pyx_t_122 = (__pyx_v_i - 1);
__pyx_t_123 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_123, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6952: I[i, j] = Io
__pyx_t_124 = __pyx_v_i;
__pyx_t_125 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6953: Col[i, j, 2] = red
__pyx_t_126 = __pyx_v_i;
__pyx_t_127 = __pyx_v_j;
__pyx_t_128 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6954: Col[i, j, 1] = green
__pyx_t_129 = __pyx_v_i;
__pyx_t_130 = __pyx_v_j;
__pyx_t_131 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6955: Col[i, j, 0] = blue
__pyx_t_132 = __pyx_v_i;
__pyx_t_133 = __pyx_v_j;
__pyx_t_134 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6956: a[k] = 1
__pyx_t_135 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6957: break
goto __pyx_L70_break;
+6958: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6959: if I[i, j - 1] == Io:
__pyx_t_136 = __pyx_v_i;
__pyx_t_137 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_136, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_137, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6960: I[i, j] = Io
__pyx_t_138 = __pyx_v_i;
__pyx_t_139 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_139, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6961: Col[i, j, 2] = red
__pyx_t_140 = __pyx_v_i;
__pyx_t_141 = __pyx_v_j;
__pyx_t_142 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6962: Col[i, j, 1] = green
__pyx_t_143 = __pyx_v_i;
__pyx_t_144 = __pyx_v_j;
__pyx_t_145 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6963: Col[i, j, 0] = blue
__pyx_t_146 = __pyx_v_i;
__pyx_t_147 = __pyx_v_j;
__pyx_t_148 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_148, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6964: a[k] = 1
__pyx_t_149 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6965: break
goto __pyx_L70_break;
6966:
+6967: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+6968: if I[i, j + 1] == Io:
__pyx_t_150 = __pyx_v_i;
__pyx_t_151 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_151, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6969: I[i, j] = Io
__pyx_t_152 = __pyx_v_i;
__pyx_t_153 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_153, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6970: Col[i, j, 2] = red
__pyx_t_154 = __pyx_v_i;
__pyx_t_155 = __pyx_v_j;
__pyx_t_156 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_156, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6971: Col[i, j, 1] = green
__pyx_t_157 = __pyx_v_i;
__pyx_t_158 = __pyx_v_j;
__pyx_t_159 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6972: Col[i, j, 0] = blue
__pyx_t_160 = __pyx_v_i;
__pyx_t_161 = __pyx_v_j;
__pyx_t_162 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_162, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6973: a[k] = 1
__pyx_t_163 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6974: break
goto __pyx_L70_break;
6975:
6976:
+6977: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+6978: if I[i + 1, j] == Io:
__pyx_t_164 = (__pyx_v_i + 1);
__pyx_t_165 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6979: I[i, j] = Io
__pyx_t_166 = __pyx_v_i;
__pyx_t_167 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_167, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6980: Col[i, j, 2] = red
__pyx_t_168 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_170 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6981: Col[i, j, 1] = green
__pyx_t_171 = __pyx_v_i;
__pyx_t_172 = __pyx_v_j;
__pyx_t_173 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6982: Col[i, j, 0] = blue
__pyx_t_174 = __pyx_v_i;
__pyx_t_175 = __pyx_v_j;
__pyx_t_176 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_176, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6983: a[k] = 1
__pyx_t_177 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6984: break
goto __pyx_L70_break;
6985:
+6986: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_118 = (__pyx_v_jmin - 1);
for (__pyx_t_117 = (__pyx_v_jo - 1); __pyx_t_117 > __pyx_t_118; __pyx_t_117-=1) {
__pyx_v_j = __pyx_t_117;
+6987: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+6988: if II[i, j] == Io:
__pyx_t_178 = __pyx_v_i;
__pyx_t_179 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_178, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_179, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L83_break:;
}
}
+6989: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6990: if I[i - 1, j] == Io:
__pyx_t_180 = (__pyx_v_i - 1);
__pyx_t_181 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_180, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_181, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6991: I[i, j] = Io
__pyx_t_182 = __pyx_v_i;
__pyx_t_183 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+6992: Col[i, j, 2] = red
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
__pyx_t_186 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+6993: Col[i, j, 1] = green
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
__pyx_t_189 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+6994: Col[i, j, 0] = blue
__pyx_t_190 = __pyx_v_i;
__pyx_t_191 = __pyx_v_j;
__pyx_t_192 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_191, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_192, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+6995: a[k] = 1
__pyx_t_193 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_193, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+6996: break
goto __pyx_L83_break;
+6997: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+6998: if I[i, j - 1] == Io:
__pyx_t_194 = __pyx_v_i;
__pyx_t_195 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_194, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_195, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+6999: I[i, j] = Io
__pyx_t_196 = __pyx_v_i;
__pyx_t_197 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7000: Col[i, j, 2] = red
__pyx_t_198 = __pyx_v_i;
__pyx_t_199 = __pyx_v_j;
__pyx_t_200 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7001: Col[i, j, 1] = green
__pyx_t_201 = __pyx_v_i;
__pyx_t_202 = __pyx_v_j;
__pyx_t_203 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7002: Col[i, j, 0] = blue
__pyx_t_204 = __pyx_v_i;
__pyx_t_205 = __pyx_v_j;
__pyx_t_206 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7003: a[k] = 1
__pyx_t_207 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7004: break
goto __pyx_L83_break;
7005:
+7006: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7007: if I[i, j + 1] == Io:
__pyx_t_208 = __pyx_v_i;
__pyx_t_209 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_209, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7008: I[i, j] = Io
__pyx_t_210 = __pyx_v_i;
__pyx_t_211 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_210, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_211, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7009: Col[i, j, 2] = red
__pyx_t_212 = __pyx_v_i;
__pyx_t_213 = __pyx_v_j;
__pyx_t_214 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_213, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_214, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7010: Col[i, j, 1] = green
__pyx_t_215 = __pyx_v_i;
__pyx_t_216 = __pyx_v_j;
__pyx_t_217 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_216, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7011: Col[i, j, 0] = blue
__pyx_t_218 = __pyx_v_i;
__pyx_t_219 = __pyx_v_j;
__pyx_t_220 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_219, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_220, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7012: a[k] = 1
__pyx_t_221 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7013: break
goto __pyx_L83_break;
7014:
7015:
+7016: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7017: if I[i + 1, j] == Io:
__pyx_t_222 = (__pyx_v_i + 1);
__pyx_t_223 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_222, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_223, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7018: I[i, j] = Io
__pyx_t_224 = __pyx_v_i;
__pyx_t_225 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_224, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_225, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7019: Col[i, j, 2] = red
__pyx_t_226 = __pyx_v_i;
__pyx_t_227 = __pyx_v_j;
__pyx_t_228 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_228, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7020: Col[i, j, 1] = green
__pyx_t_229 = __pyx_v_i;
__pyx_t_230 = __pyx_v_j;
__pyx_t_231 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_229, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7021: Col[i, j, 0] = blue
__pyx_t_232 = __pyx_v_i;
__pyx_t_233 = __pyx_v_j;
__pyx_t_234 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7022: a[k] = 1
__pyx_t_235 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7023: break
goto __pyx_L83_break;
7024:
7025:
7026:
+7027: for i in range(io - 1, imin - 1, -1):
__pyx_t_102 = (__pyx_v_imin - 1);
for (__pyx_t_101 = (__pyx_v_io - 1); __pyx_t_101 > __pyx_t_102; __pyx_t_101-=1) {
__pyx_v_i = __pyx_t_101;
+7028: for j in range(jo, jmax + 1):
__pyx_t_118 = (__pyx_v_jmax + 1);
for (__pyx_t_117 = __pyx_v_jo; __pyx_t_117 < __pyx_t_118; __pyx_t_117+=1) {
__pyx_v_j = __pyx_t_117;
+7029: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+7030: if II[i, j] == Io:
__pyx_t_236 = __pyx_v_i;
__pyx_t_237 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_236, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_237, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L98_break:;
}
+7031: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7032: if I[i - 1, j] == Io:
__pyx_t_238 = (__pyx_v_i - 1);
__pyx_t_239 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_238, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_239, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7033: I[i, j] = Io
__pyx_t_240 = __pyx_v_i;
__pyx_t_241 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7034: Col[i, j, 2] = red
__pyx_t_242 = __pyx_v_i;
__pyx_t_243 = __pyx_v_j;
__pyx_t_244 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7035: Col[i, j, 1] = green
__pyx_t_245 = __pyx_v_i;
__pyx_t_246 = __pyx_v_j;
__pyx_t_247 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_246, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7036: Col[i, j, 0] = blue
__pyx_t_248 = __pyx_v_i;
__pyx_t_249 = __pyx_v_j;
__pyx_t_250 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_248, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_249, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_250, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7037: a[k] = 1
__pyx_t_251 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_251, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7038: break
goto __pyx_L98_break;
+7039: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7040: if I[i, j - 1] == Io:
__pyx_t_252 = __pyx_v_i;
__pyx_t_253 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_252, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_253, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7041: I[i, j] = Io
__pyx_t_254 = __pyx_v_i;
__pyx_t_255 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7042: Col[i, j, 2] = red
__pyx_t_256 = __pyx_v_i;
__pyx_t_257 = __pyx_v_j;
__pyx_t_258 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7043: Col[i, j, 1] = green
__pyx_t_259 = __pyx_v_i;
__pyx_t_260 = __pyx_v_j;
__pyx_t_261 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7044: Col[i, j, 0] = blue
__pyx_t_262 = __pyx_v_i;
__pyx_t_263 = __pyx_v_j;
__pyx_t_264 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7045: a[k] = 1
__pyx_t_265 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_265, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7046: break
goto __pyx_L98_break;
7047:
+7048: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7049: if I[i, j + 1] == Io:
__pyx_t_266 = __pyx_v_i;
__pyx_t_267 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_267, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7050: I[i, j] = Io
__pyx_t_268 = __pyx_v_i;
__pyx_t_269 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_268, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_269, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7051: Col[i, j, 2] = red
__pyx_t_270 = __pyx_v_i;
__pyx_t_271 = __pyx_v_j;
__pyx_t_272 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_272, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7052: Col[i, j, 1] = green
__pyx_t_273 = __pyx_v_i;
__pyx_t_274 = __pyx_v_j;
__pyx_t_275 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_273, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_274, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7053: Col[i, j, 0] = blue
__pyx_t_276 = __pyx_v_i;
__pyx_t_277 = __pyx_v_j;
__pyx_t_278 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_278, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7054: a[k] = 1
__pyx_t_279 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7055: break
goto __pyx_L98_break;
7056:
7057:
+7058: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7059: if I[i + 1, j] == Io:
__pyx_t_280 = (__pyx_v_i + 1);
__pyx_t_281 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_280, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_281, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7060: I[i, j] = Io
__pyx_t_282 = __pyx_v_i;
__pyx_t_283 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_283, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7061: Col[i, j, 2] = red
__pyx_t_284 = __pyx_v_i;
__pyx_t_285 = __pyx_v_j;
__pyx_t_286 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_286, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7062: Col[i, j, 1] = green
__pyx_t_287 = __pyx_v_i;
__pyx_t_288 = __pyx_v_j;
__pyx_t_289 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_287, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7063: Col[i, j, 0] = blue
__pyx_t_290 = __pyx_v_i;
__pyx_t_291 = __pyx_v_j;
__pyx_t_292 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7064: a[k] = 1
__pyx_t_293 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7065: break
goto __pyx_L98_break;
7066:
+7067: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_118 = (__pyx_v_jmin - 1);
for (__pyx_t_117 = (__pyx_v_jo - 1); __pyx_t_117 > __pyx_t_118; __pyx_t_117-=1) {
__pyx_v_j = __pyx_t_117;
+7068: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+7069: if II[i, j] == Io:
__pyx_t_294 = __pyx_v_i;
__pyx_t_295 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_294, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_295, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L111_break:;
}
}
+7070: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7071: if I[i - 1, j] == Io:
__pyx_t_296 = (__pyx_v_i - 1);
__pyx_t_297 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_296, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_297, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7072: I[i, j] = Io
__pyx_t_298 = __pyx_v_i;
__pyx_t_299 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7073: Col[i, j, 2] = red
__pyx_t_300 = __pyx_v_i;
__pyx_t_301 = __pyx_v_j;
__pyx_t_302 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_301, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7074: Col[i, j, 1] = green
__pyx_t_303 = __pyx_v_i;
__pyx_t_304 = __pyx_v_j;
__pyx_t_305 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_304, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7075: Col[i, j, 0] = blue
__pyx_t_306 = __pyx_v_i;
__pyx_t_307 = __pyx_v_j;
__pyx_t_308 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7076: a[k] = 1
__pyx_t_309 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_309, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7077: break
goto __pyx_L111_break;
+7078: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7079: if I[i, j - 1] == Io:
__pyx_t_310 = __pyx_v_i;
__pyx_t_311 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_310, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_311, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7080: I[i, j] = Io
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7081: Col[i, j, 2] = red
__pyx_t_314 = __pyx_v_i;
__pyx_t_315 = __pyx_v_j;
__pyx_t_316 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_315, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_316, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7082: Col[i, j, 1] = green
__pyx_t_317 = __pyx_v_i;
__pyx_t_318 = __pyx_v_j;
__pyx_t_319 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_317, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_318, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7083: Col[i, j, 0] = blue
__pyx_t_320 = __pyx_v_i;
__pyx_t_321 = __pyx_v_j;
__pyx_t_322 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7084: a[k] = 1
__pyx_t_323 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_323, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7085: break
goto __pyx_L111_break;
7086:
+7087: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7088: if I[i, j + 1] == Io:
__pyx_t_324 = __pyx_v_i;
__pyx_t_325 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_324, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_325, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7089: I[i, j] = Io
__pyx_t_326 = __pyx_v_i;
__pyx_t_327 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_326, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_327, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7090: Col[i, j, 2] = red
__pyx_t_328 = __pyx_v_i;
__pyx_t_329 = __pyx_v_j;
__pyx_t_330 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_329, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_330, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7091: Col[i, j, 1] = green
__pyx_t_331 = __pyx_v_i;
__pyx_t_332 = __pyx_v_j;
__pyx_t_333 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_331, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_332, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_333, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7092: Col[i, j, 0] = blue
__pyx_t_334 = __pyx_v_i;
__pyx_t_335 = __pyx_v_j;
__pyx_t_336 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7093: a[k] = 1
__pyx_t_337 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_337, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7094: break
goto __pyx_L111_break;
7095:
7096:
+7097: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7098: if I[i + 1, j] == Io:
__pyx_t_338 = (__pyx_v_i + 1);
__pyx_t_339 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_338, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_339, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7099: I[i, j] = Io
__pyx_t_340 = __pyx_v_i;
__pyx_t_341 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_340, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_341, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7100: Col[i, j, 2] = red
__pyx_t_342 = __pyx_v_i;
__pyx_t_343 = __pyx_v_j;
__pyx_t_344 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_343, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_344, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7101: Col[i, j, 1] = green
__pyx_t_345 = __pyx_v_i;
__pyx_t_346 = __pyx_v_j;
__pyx_t_347 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_345, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_346, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_347, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7102: Col[i, j, 0] = blue
__pyx_t_348 = __pyx_v_i;
__pyx_t_349 = __pyx_v_j;
__pyx_t_350 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_348, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7103: a[k] = 1
__pyx_t_351 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_351, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7104: break
goto __pyx_L111_break;
7105:
7106:
7107:
7108: # INWARD
+7109: for i in range(imax, io - 1, -1):
__pyx_t_102 = (__pyx_v_io - 1);
for (__pyx_t_101 = __pyx_v_imax; __pyx_t_101 > __pyx_t_102; __pyx_t_101-=1) {
__pyx_v_i = __pyx_t_101;
+7110: for j in range(jo, jmax + 1):
__pyx_t_118 = (__pyx_v_jmax + 1);
for (__pyx_t_117 = __pyx_v_jo; __pyx_t_117 < __pyx_t_118; __pyx_t_117+=1) {
__pyx_v_j = __pyx_t_117;
+7111: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+7112: if II[i, j] == Io:
__pyx_t_352 = __pyx_v_i;
__pyx_t_353 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_352, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_353, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L126_break:;
}
+7113: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7114: if I[i - 1, j] == Io:
__pyx_t_354 = (__pyx_v_i - 1);
__pyx_t_355 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_354, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_355, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7115: I[i, j] = Io
__pyx_t_356 = __pyx_v_i;
__pyx_t_357 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_356, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_357, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7116: Col[i, j, 2] = red
__pyx_t_358 = __pyx_v_i;
__pyx_t_359 = __pyx_v_j;
__pyx_t_360 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_358, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_359, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_360, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7117: Col[i, j, 1] = green
__pyx_t_361 = __pyx_v_i;
__pyx_t_362 = __pyx_v_j;
__pyx_t_363 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_361, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_362, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_363, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7118: Col[i, j, 0] = blue
__pyx_t_364 = __pyx_v_i;
__pyx_t_365 = __pyx_v_j;
__pyx_t_366 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7119: a[k] = 1
__pyx_t_367 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_367, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7120: break
goto __pyx_L126_break;
+7121: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7122: if I[i, j - 1] == Io:
__pyx_t_368 = __pyx_v_i;
__pyx_t_369 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_368, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_369, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7123: I[i, j] = Io
__pyx_t_370 = __pyx_v_i;
__pyx_t_371 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_371, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7124: Col[i, j, 2] = red
__pyx_t_372 = __pyx_v_i;
__pyx_t_373 = __pyx_v_j;
__pyx_t_374 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_372, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_373, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_374, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7125: Col[i, j, 1] = green
__pyx_t_375 = __pyx_v_i;
__pyx_t_376 = __pyx_v_j;
__pyx_t_377 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_375, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_376, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_377, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7126: Col[i, j, 0] = blue
__pyx_t_378 = __pyx_v_i;
__pyx_t_379 = __pyx_v_j;
__pyx_t_380 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7127: a[k] = 1
__pyx_t_381 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_381, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7128: break
goto __pyx_L126_break;
7129:
+7130: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7131: if I[i, j + 1] == Io:
__pyx_t_382 = __pyx_v_i;
__pyx_t_383 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_382, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_383, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7132: I[i, j] = Io
__pyx_t_384 = __pyx_v_i;
__pyx_t_385 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_384, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_385, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7133: Col[i, j, 2] = red
__pyx_t_386 = __pyx_v_i;
__pyx_t_387 = __pyx_v_j;
__pyx_t_388 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_386, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_387, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_388, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7134: Col[i, j, 1] = green
__pyx_t_389 = __pyx_v_i;
__pyx_t_390 = __pyx_v_j;
__pyx_t_391 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_389, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_390, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_391, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7135: Col[i, j, 0] = blue
__pyx_t_392 = __pyx_v_i;
__pyx_t_393 = __pyx_v_j;
__pyx_t_394 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7136: a[k] = 1
__pyx_t_395 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_395, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7137: break
goto __pyx_L126_break;
7138:
7139:
+7140: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7141: if I[i + 1, j] == Io:
__pyx_t_396 = (__pyx_v_i + 1);
__pyx_t_397 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_396, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_397, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7142: I[i, j] = Io
__pyx_t_398 = __pyx_v_i;
__pyx_t_399 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_398, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_399, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7143: Col[i, j, 2] = red
__pyx_t_400 = __pyx_v_i;
__pyx_t_401 = __pyx_v_j;
__pyx_t_402 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_400, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_401, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_402, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7144: Col[i, j, 1] = green
__pyx_t_403 = __pyx_v_i;
__pyx_t_404 = __pyx_v_j;
__pyx_t_405 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_403, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_404, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_405, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7145: Col[i, j, 0] = blue
__pyx_t_406 = __pyx_v_i;
__pyx_t_407 = __pyx_v_j;
__pyx_t_408 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_406, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_407, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_408, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7146: a[k] = 1
__pyx_t_409 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_409, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7147: break
goto __pyx_L126_break;
7148:
+7149: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_118 = (__pyx_v_jmin - 1);
for (__pyx_t_117 = (__pyx_v_jo - 1); __pyx_t_117 > __pyx_t_118; __pyx_t_117-=1) {
__pyx_v_j = __pyx_t_117;
+7150: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+7151: if II[i, j] == Io:
__pyx_t_410 = __pyx_v_i;
__pyx_t_411 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_410, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_411, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L139_break:;
}
}
+7152: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7153: if I[i - 1, j] == Io:
__pyx_t_412 = (__pyx_v_i - 1);
__pyx_t_413 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_412, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_413, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7154: I[i, j] = Io
__pyx_t_414 = __pyx_v_i;
__pyx_t_415 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_414, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_415, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7155: Col[i, j, 2] = red
__pyx_t_416 = __pyx_v_i;
__pyx_t_417 = __pyx_v_j;
__pyx_t_418 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_416, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_417, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_418, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7156: Col[i, j, 1] = green
__pyx_t_419 = __pyx_v_i;
__pyx_t_420 = __pyx_v_j;
__pyx_t_421 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_419, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_420, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_421, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7157: Col[i, j, 0] = blue
__pyx_t_422 = __pyx_v_i;
__pyx_t_423 = __pyx_v_j;
__pyx_t_424 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_422, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7158: a[k] = 1
__pyx_t_425 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_425, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7159: break
goto __pyx_L139_break;
+7160: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7161: if I[i, j - 1] == Io:
__pyx_t_426 = __pyx_v_i;
__pyx_t_427 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_426, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_427, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7162: I[i, j] = Io
__pyx_t_428 = __pyx_v_i;
__pyx_t_429 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_428, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_429, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7163: Col[i, j, 2] = red
__pyx_t_430 = __pyx_v_i;
__pyx_t_431 = __pyx_v_j;
__pyx_t_432 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_430, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_431, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_432, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7164: Col[i, j, 1] = green
__pyx_t_433 = __pyx_v_i;
__pyx_t_434 = __pyx_v_j;
__pyx_t_435 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_433, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_434, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_435, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7165: Col[i, j, 0] = blue
__pyx_t_436 = __pyx_v_i;
__pyx_t_437 = __pyx_v_j;
__pyx_t_438 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_436, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7166: a[k] = 1
__pyx_t_439 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_439, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7167: break
goto __pyx_L139_break;
7168:
+7169: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7170: if I[i, j + 1] == Io:
__pyx_t_440 = __pyx_v_i;
__pyx_t_441 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_440, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_441, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7171: I[i, j] = Io
__pyx_t_442 = __pyx_v_i;
__pyx_t_443 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_442, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_443, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7172: Col[i, j, 2] = red
__pyx_t_444 = __pyx_v_i;
__pyx_t_445 = __pyx_v_j;
__pyx_t_446 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_444, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_445, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_446, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7173: Col[i, j, 1] = green
__pyx_t_447 = __pyx_v_i;
__pyx_t_448 = __pyx_v_j;
__pyx_t_449 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_447, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_448, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_449, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7174: Col[i, j, 0] = blue
__pyx_t_450 = __pyx_v_i;
__pyx_t_451 = __pyx_v_j;
__pyx_t_452 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_450, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_451, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_452, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7175: a[k] = 1
__pyx_t_453 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_453, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7176: break
goto __pyx_L139_break;
7177:
7178:
+7179: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7180: if I[i + 1, j] == Io:
__pyx_t_454 = (__pyx_v_i + 1);
__pyx_t_455 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_454, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_455, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7181: I[i, j] = Io
__pyx_t_456 = __pyx_v_i;
__pyx_t_457 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_456, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_457, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7182: Col[i, j, 2] = red
__pyx_t_458 = __pyx_v_i;
__pyx_t_459 = __pyx_v_j;
__pyx_t_460 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_458, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_459, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_460, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7183: Col[i, j, 1] = green
__pyx_t_461 = __pyx_v_i;
__pyx_t_462 = __pyx_v_j;
__pyx_t_463 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_461, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_462, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_463, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7184: Col[i, j, 0] = blue
__pyx_t_464 = __pyx_v_i;
__pyx_t_465 = __pyx_v_j;
__pyx_t_466 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_464, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_465, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_466, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7185: a[k] = 1
__pyx_t_467 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_467, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7186: break
goto __pyx_L139_break;
7187:
7188:
7189:
+7190: for i in range(imin, io, -1):
__pyx_t_102 = __pyx_v_io;
for (__pyx_t_101 = __pyx_v_imin; __pyx_t_101 > __pyx_t_102; __pyx_t_101-=1) {
__pyx_v_i = __pyx_t_101;
+7191: for j in range(jo, jmax + 1):
__pyx_t_118 = (__pyx_v_jmax + 1);
for (__pyx_t_117 = __pyx_v_jo; __pyx_t_117 < __pyx_t_118; __pyx_t_117+=1) {
__pyx_v_j = __pyx_t_117;
+7192: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+7193: if II[i, j] == Io:
__pyx_t_468 = __pyx_v_i;
__pyx_t_469 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_468, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_469, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L154_break:;
}
+7194: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7195: if I[i - 1, j] == Io:
__pyx_t_470 = (__pyx_v_i - 1);
__pyx_t_471 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_470, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_471, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7196: I[i, j] = Io
__pyx_t_472 = __pyx_v_i;
__pyx_t_473 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_472, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_473, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7197: Col[i, j, 2] = red
__pyx_t_474 = __pyx_v_i;
__pyx_t_475 = __pyx_v_j;
__pyx_t_476 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_474, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_475, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_476, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7198: Col[i, j, 1] = green
__pyx_t_477 = __pyx_v_i;
__pyx_t_478 = __pyx_v_j;
__pyx_t_479 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_477, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_478, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_479, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7199: Col[i, j, 0] = blue
__pyx_t_480 = __pyx_v_i;
__pyx_t_481 = __pyx_v_j;
__pyx_t_482 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_480, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_481, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_482, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7200: a[k] = 1
__pyx_t_483 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_483, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7201: break
goto __pyx_L154_break;
+7202: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7203: if I[i, j - 1] == Io:
__pyx_t_484 = __pyx_v_i;
__pyx_t_485 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_484, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_485, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7204: I[i, j] = Io
__pyx_t_486 = __pyx_v_i;
__pyx_t_487 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_486, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_487, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7205: Col[i, j, 2] = red
__pyx_t_488 = __pyx_v_i;
__pyx_t_489 = __pyx_v_j;
__pyx_t_490 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_488, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_489, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_490, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7206: Col[i, j, 1] = green
__pyx_t_491 = __pyx_v_i;
__pyx_t_492 = __pyx_v_j;
__pyx_t_493 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_491, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_492, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_493, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7207: Col[i, j, 0] = blue
__pyx_t_494 = __pyx_v_i;
__pyx_t_495 = __pyx_v_j;
__pyx_t_496 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_494, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_495, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_496, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7208: a[k] = 1
__pyx_t_497 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_497, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7209: break
goto __pyx_L154_break;
7210:
+7211: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7212: if I[i, j + 1] == Io:
__pyx_t_498 = __pyx_v_i;
__pyx_t_499 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_498, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_499, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7213: I[i, j] = Io
__pyx_t_500 = __pyx_v_i;
__pyx_t_501 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_500, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_501, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7214: Col[i, j, 2] = red
__pyx_t_502 = __pyx_v_i;
__pyx_t_503 = __pyx_v_j;
__pyx_t_504 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_502, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_503, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_504, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7215: Col[i, j, 1] = green
__pyx_t_505 = __pyx_v_i;
__pyx_t_506 = __pyx_v_j;
__pyx_t_507 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_505, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_506, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_507, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7216: Col[i, j, 0] = blue
__pyx_t_508 = __pyx_v_i;
__pyx_t_509 = __pyx_v_j;
__pyx_t_510 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_508, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_509, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_510, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7217: a[k] = 1
__pyx_t_511 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_511, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7218: break
goto __pyx_L154_break;
7219:
7220:
+7221: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7222: if I[i + 1, j] == Io:
__pyx_t_512 = (__pyx_v_i + 1);
__pyx_t_513 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_512, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_513, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7223: I[i, j] = Io
__pyx_t_514 = __pyx_v_i;
__pyx_t_515 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_514, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_515, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7224: Col[i, j, 2] = red
__pyx_t_516 = __pyx_v_i;
__pyx_t_517 = __pyx_v_j;
__pyx_t_518 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_516, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_517, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_518, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7225: Col[i, j, 1] = green
__pyx_t_519 = __pyx_v_i;
__pyx_t_520 = __pyx_v_j;
__pyx_t_521 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_519, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_520, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_521, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7226: Col[i, j, 0] = blue
__pyx_t_522 = __pyx_v_i;
__pyx_t_523 = __pyx_v_j;
__pyx_t_524 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_522, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_523, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_524, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7227: a[k] = 1
__pyx_t_525 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_525, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7228: break
goto __pyx_L154_break;
7229:
+7230: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_118 = (__pyx_v_jmin - 1);
for (__pyx_t_117 = (__pyx_v_jo - 1); __pyx_t_117 > __pyx_t_118; __pyx_t_117-=1) {
__pyx_v_j = __pyx_t_117;
+7231: for dum in range(1):
for (__pyx_t_119 = 0; __pyx_t_119 < 1; __pyx_t_119+=1) {
__pyx_v_dum = __pyx_t_119;
+7232: if II[i, j] == Io:
__pyx_t_526 = __pyx_v_i;
__pyx_t_527 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_526, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_527, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L167_break:;
}
}
+7233: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7234: if I[i - 1, j] == Io:
__pyx_t_528 = (__pyx_v_i - 1);
__pyx_t_529 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_528, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_529, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7235: I[i, j] = Io
__pyx_t_530 = __pyx_v_i;
__pyx_t_531 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_530, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_531, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7236: Col[i, j, 2] = red
__pyx_t_532 = __pyx_v_i;
__pyx_t_533 = __pyx_v_j;
__pyx_t_534 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_532, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_533, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_534, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7237: Col[i, j, 1] = green
__pyx_t_535 = __pyx_v_i;
__pyx_t_536 = __pyx_v_j;
__pyx_t_537 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_535, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_536, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_537, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7238: Col[i, j, 0] = blue
__pyx_t_538 = __pyx_v_i;
__pyx_t_539 = __pyx_v_j;
__pyx_t_540 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_538, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_539, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_540, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7239: a[k] = 1
__pyx_t_541 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_541, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7240: break
goto __pyx_L167_break;
+7241: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7242: if I[i, j - 1] == Io:
__pyx_t_542 = __pyx_v_i;
__pyx_t_543 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_542, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_543, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7243: I[i, j] = Io
__pyx_t_544 = __pyx_v_i;
__pyx_t_545 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_544, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_545, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7244: Col[i, j, 2] = red
__pyx_t_546 = __pyx_v_i;
__pyx_t_547 = __pyx_v_j;
__pyx_t_548 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_546, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_547, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_548, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7245: Col[i, j, 1] = green
__pyx_t_549 = __pyx_v_i;
__pyx_t_550 = __pyx_v_j;
__pyx_t_551 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_549, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_550, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_551, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7246: Col[i, j, 0] = blue
__pyx_t_552 = __pyx_v_i;
__pyx_t_553 = __pyx_v_j;
__pyx_t_554 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_552, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_553, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_554, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7247: a[k] = 1
__pyx_t_555 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_555, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7248: break
goto __pyx_L167_break;
7249:
+7250: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7251: if I[i, j + 1] == Io:
__pyx_t_556 = __pyx_v_i;
__pyx_t_557 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_556, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_557, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7252: I[i, j] = Io
__pyx_t_558 = __pyx_v_i;
__pyx_t_559 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_558, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_559, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7253: Col[i, j, 2] = red
__pyx_t_560 = __pyx_v_i;
__pyx_t_561 = __pyx_v_j;
__pyx_t_562 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_560, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_561, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_562, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7254: Col[i, j, 1] = green
__pyx_t_563 = __pyx_v_i;
__pyx_t_564 = __pyx_v_j;
__pyx_t_565 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_563, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_564, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_565, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7255: Col[i, j, 0] = blue
__pyx_t_566 = __pyx_v_i;
__pyx_t_567 = __pyx_v_j;
__pyx_t_568 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_566, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_567, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_568, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7256: a[k] = 1
__pyx_t_569 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_569, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7257: break
goto __pyx_L167_break;
7258:
7259:
+7260: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7261: if I[i + 1, j] == Io:
__pyx_t_570 = (__pyx_v_i + 1);
__pyx_t_571 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_570, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_571, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7262: I[i, j] = Io
__pyx_t_572 = __pyx_v_i;
__pyx_t_573 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_572, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_573, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7263: Col[i, j, 2] = red
__pyx_t_574 = __pyx_v_i;
__pyx_t_575 = __pyx_v_j;
__pyx_t_576 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_574, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_575, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_576, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7264: Col[i, j, 1] = green
__pyx_t_577 = __pyx_v_i;
__pyx_t_578 = __pyx_v_j;
__pyx_t_579 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_577, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_578, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_579, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7265: Col[i, j, 0] = blue
__pyx_t_580 = __pyx_v_i;
__pyx_t_581 = __pyx_v_j;
__pyx_t_582 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_580, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_581, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_582, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7266: a[k] = 1
__pyx_t_583 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_583, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7267: break
goto __pyx_L167_break;
7268:
+7269: if a[k] == 0:
__pyx_t_102 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7270: xmin = max(0, xo - MAJceil)
__pyx_t_101 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_584 = 0;
if (((__pyx_t_101 > __pyx_t_584) != 0)) {
__pyx_t_118 = __pyx_t_101;
} else {
__pyx_t_118 = __pyx_t_584;
}
__pyx_v_xmin = __pyx_t_118;
+7271: xmax = min(m - 1, xo + MAJceil)
__pyx_t_118 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_101 = (__pyx_v_m - 1);
if (((__pyx_t_118 < __pyx_t_101) != 0)) {
__pyx_t_117 = __pyx_t_118;
} else {
__pyx_t_117 = __pyx_t_101;
}
__pyx_v_xmax = __pyx_t_117;
+7272: ymin = max(0, yo - MINceil)
__pyx_t_117 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_584 = 0;
if (((__pyx_t_117 > __pyx_t_584) != 0)) {
__pyx_t_118 = __pyx_t_117;
} else {
__pyx_t_118 = __pyx_t_584;
}
__pyx_v_ymin = __pyx_t_118;
+7273: ymax = min(n - 1, yo + MINceil)
__pyx_t_118 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_117 = (__pyx_v_n - 1);
if (((__pyx_t_118 < __pyx_t_117) != 0)) {
__pyx_t_101 = __pyx_t_118;
} else {
__pyx_t_101 = __pyx_t_117;
}
__pyx_v_ymax = __pyx_t_101;
+7274: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_101 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
7275:
7276:
7277:
7278:
+7279: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+7280: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
+7281: nnz = cv2.countNonZero(I)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_35); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_35, function); } } if (!__pyx_t_25) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_35, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_25); __pyx_t_25 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_5, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_t_78 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_7); if (unlikely((__pyx_t_78 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7281, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_nnz = __pyx_t_78; }
7282:
+7283: obj.p = p
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7283, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_7) < 0) __PYX_ERR(0, 7283, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+7284: toc = time.time()
__pyx_t_35 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_35, __pyx_n_s_time); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7284, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_t_35 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_35 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_35)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (__pyx_t_35) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_35); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7284, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7284, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7284, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_toc = __pyx_t_23;
+7285: obj.exetime = toc - tic
__pyx_t_7 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7285, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_7) < 0) __PYX_ERR(0, 7285, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+7286: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_delete); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_585 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_585)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_585); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_585, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_585, 0+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_585, 1+__pyx_t_27, __pyx_t_6); __pyx_t_25 = 0; __pyx_t_6 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_585, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_585); __pyx_t_585 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_35); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_35, function); __pyx_t_27 = 1; } } __pyx_t_585 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_585)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_585); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_585, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_585, 0+__pyx_t_27, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_585, 1+__pyx_t_27, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_585, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_585); __pyx_t_585 = 0; __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_7) < 0) __PYX_ERR(0, 7286, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+7287: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_35 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_585 = __Pyx_PyObject_GetAttrStr(__pyx_t_35, __pyx_n_s_delete); if (unlikely(!__pyx_t_585)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_585); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_arange); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_585))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_585); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_585); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_585, function); __pyx_t_27 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_t_35); __pyx_t_35 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_585, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_585); __pyx_t_585 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_7) < 0) __PYX_ERR(0, 7287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+7288: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 7288, __pyx_L1_error)
+7289: obj.adotVal = adotVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_adotVal, ((PyObject *)__pyx_v_adotVal)) < 0) __PYX_ERR(0, 7289, __pyx_L1_error)
+7290: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 7290, __pyx_L1_error)
+7291: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
7292:
+7293: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_53Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_53Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_53Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_53Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_52Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_52Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_seq;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_Min;
float __pyx_v_Maj;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_Rvals = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rvals;
__Pyx_Buffer __pyx_pybuffer_Rvals;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot", 0);
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_Rvals.pybuffer.buf = NULL;
__pyx_pybuffer_Rvals.refcount = 0;
__pyx_pybuffernd_Rvals.data = NULL;
__pyx_pybuffernd_Rvals.rcbuffer = &__pyx_pybuffer_Rvals;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_35);
__Pyx_XDECREF(__pyx_t_39);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rvals.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rvals.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_Rvals);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__63 = PyTuple_Pack(70, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_Thetafunc, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_tmp, __pyx_n_s_Min, __pyx_n_s_Maj, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_MAJ, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_Rvals, __pyx_n_s_Col, __pyx_n_s_col); if (unlikely(!__pyx_tuple__63)) __PYX_ERR(0, 7293, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__63);
__Pyx_GIVEREF(__pyx_tuple__63);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_53Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7293, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_9, __pyx_t_2) < 0) __PYX_ERR(0, 7293, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__64 = (PyObject*)__Pyx_PyCode_New(1, 0, 70, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__63, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_9, 7293, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__64)) __PYX_ERR(0, 7293, __pyx_L1_error)
7294: # Grabbing data from the input object
+7295: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7295, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+7296: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7296, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7296, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+7297: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7297, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+7298: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7298, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+7299: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7299, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 7299, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+7300: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+7301: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7301, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7301, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+7302: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 7302, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+7303: cdef long long seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7303, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7303, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_2;
+7304: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7304, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+7305: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7305, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+7306: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7306, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+7307: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7307, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+7308: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7308, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+7309: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7309, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
+7310: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7310, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
7311:
7312: # Declaring other variables
7313: cdef double tic, toc
7314: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, delX, delY, xmin, xmax, ymin, ymax, dum, Iter
7315: cdef float dt, f, t, tmp, Min, Maj, theta, c, s, red, green, blue
+7316: cdef np.ndarray[np.int64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7316, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7316, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7316, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_9 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+7317: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7317, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7317, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7317, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+7318: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7318, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7318, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7318, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+7319: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7319, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7319, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7319, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_12 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+7320: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7320, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7320, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7320, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+7321: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7321, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7321, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+7322: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7322, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7322, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+7323: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(MN, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7323, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7323, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7323, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+7324: cdef np.ndarray[np.float64_t, ndim = 1] Rvals = np.ones(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7324, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7324, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rvals.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Rvals = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7324, __pyx_L1_error) } else {__pyx_pybuffernd_Rvals.diminfo[0].strides = __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rvals.diminfo[0].shape = __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_Rvals = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+7325: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7325, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7325, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7325, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_18 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+7326: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7326, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7326, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7326, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_19 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+7327: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7327, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7327, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+7328: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7328, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7328, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7328, __pyx_L1_error) } __pyx_t_19 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+7329: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7329, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7329, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7329, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7329, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7329, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_tic = __pyx_t_23;
7330:
7331:
7332:
+7333: t = 0
__pyx_v_t = 0.0;
+7334: p = 0
__pyx_v_p = 0;
+7335: dp = 0
__pyx_v_dp = 0;
+7336: countim = 0
__pyx_v_countim = 0;
+7337: nnz = 0
__pyx_v_nnz = 0;
+7338: Iter = 1
__pyx_v_Iter = 1;
+7339: while nnz < MN:
while (1) {
__pyx_t_24 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_24) break;
+7340: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+7341: dt = 1.0 / Gt(t)
__pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7341, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_5, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7341, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 7341, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+7342: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_8 = __pyx_v_Ndot; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyNumber_Multiply(__pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7342, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_dp = __pyx_t_2;
+7343: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+7344: if pdelNxy == []:
__pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7344, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_24 < 0)) __PYX_ERR(0, 7344, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_24) { /* … */ goto __pyx_L5; }
+7345: if seq == 3 or seq == 4 or seq == 6:
switch (__pyx_v_seq) {
case 3:
case 4:
case 6:
/* … */
break;
default:
+7346: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L7_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+7347: count = 0
__pyx_v_count = 0;
+7348: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+7349: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7349, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7349, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+7350: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_25, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7350, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7350, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+7351: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+7352: I[xt, yt] = p + count + 1
__pyx_t_29 = __pyx_v_xt;
__pyx_t_30 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7353: X[p + count] = xt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7354: Y[p + count] = yt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7355: a[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7356: MAJ[p + count] = 1
__pyx_t_34 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+7357: Rvals[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_8 = __pyx_v_Rfunc; __pyx_t_7 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_35 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_35, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_35, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_35, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_35, 3+__pyx_t_27, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_35, 4+__pyx_t_27, __pyx_int_0); __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_35, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7357, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_37 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_Rvals.diminfo[0].strides) = __pyx_t_36;
+7358: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rvals[p + count], 1)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7358, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7358, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7358, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_38 = (__pyx_v_p + __pyx_v_count); __pyx_t_25 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_Rvals.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7358, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_5 = __pyx_v_Thetafunc; __pyx_t_7 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_39 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7358, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_39, 1+__pyx_t_27, __pyx_t_35); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_39, 2+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_39, 3+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 4+__pyx_t_27, __pyx_int_1); __pyx_t_8 = 0; __pyx_t_35 = 0; __pyx_t_1 = 0; __pyx_t_25 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7358, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7358, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_40 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+7359: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_41 = (__pyx_v_p + __pyx_v_count);
__pyx_t_42 = 0;
__pyx_t_43 = __pyx_v_xt;
__pyx_t_44 = __pyx_v_yt;
__pyx_t_45 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_42, __pyx_pybuffernd_col.diminfo[1].strides));
+7360: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_46 = (__pyx_v_p + __pyx_v_count);
__pyx_t_47 = 1;
__pyx_t_48 = __pyx_v_xt;
__pyx_t_49 = __pyx_v_yt;
__pyx_t_50 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_47, __pyx_pybuffernd_col.diminfo[1].strides));
+7361: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_51 = (__pyx_v_p + __pyx_v_count);
__pyx_t_52 = 2;
__pyx_t_53 = __pyx_v_xt;
__pyx_t_54 = __pyx_v_yt;
__pyx_t_55 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_col.diminfo[1].strides));
+7362: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7363: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7364: else:
+7365: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L14_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
break;
}
+7366: count = 0
__pyx_v_count = 0;
+7367: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+7368: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_39 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_t_39); __pyx_t_39 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7368, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_56 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_56 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7368, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_56;
+7369: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_39 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_39) { __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_39); __pyx_t_39 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_25, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_56 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_56 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7369, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_56;
+7370: if I[xt, yt] == 0:
__pyx_t_56 = __pyx_v_xt;
__pyx_t_57 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_57, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+7371: I[xt, yt] = p + count + 1
__pyx_t_58 = __pyx_v_xt;
__pyx_t_59 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_59, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7372: X[p + count] = xt
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7373: Y[p + count] = yt
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7374: a[p + count] = 1
__pyx_t_62 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7375: MAJ[p + count] = 1
__pyx_t_63 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+7376: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7376, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7376, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7376, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_39 = __pyx_v_Thetafunc; __pyx_t_35 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_39))) { __pyx_t_35 = PyMethod_GET_SELF(__pyx_t_39); if (likely(__pyx_t_35)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_39); __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_39, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7376, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_35) { __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_35); __pyx_t_35 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_27, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_27, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_39, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7376, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7376, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_64 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+7377: Rvals[p + count] = Rfunc(xt, yt, p + count + 1, 1, Theta[p + count])
__pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_65 = (__pyx_v_p + __pyx_v_count); __pyx_t_25 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_5 = __pyx_v_Rfunc; __pyx_t_35 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_35 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_35)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_35) { __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_35); __pyx_t_35 = NULL; } __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_27, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_27, __pyx_t_25); __pyx_t_39 = 0; __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_25 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7377, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7377, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_66 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_Rvals.diminfo[0].strides) = __pyx_t_36;
+7378: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_67 = (__pyx_v_p + __pyx_v_count);
__pyx_t_68 = 0;
__pyx_t_69 = __pyx_v_xt;
__pyx_t_70 = __pyx_v_yt;
__pyx_t_71 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_70, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_col.diminfo[1].strides));
+7379: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_72 = (__pyx_v_p + __pyx_v_count);
__pyx_t_73 = 1;
__pyx_t_74 = __pyx_v_xt;
__pyx_t_75 = __pyx_v_yt;
__pyx_t_76 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_col.diminfo[1].strides));
+7380: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_77 = (__pyx_v_p + __pyx_v_count);
__pyx_t_78 = 2;
__pyx_t_79 = __pyx_v_xt;
__pyx_t_80 = __pyx_v_yt;
__pyx_t_81 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_81, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_78, __pyx_pybuffernd_col.diminfo[1].strides));
+7381: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7382: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7383: else:
+7384: if seq == 3 or seq == 4 or seq == 6:
/*else*/ {
switch (__pyx_v_seq) {
case 3:
case 4:
case 6:
/* … */
break;
default:
+7385: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L21_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+7386: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_27 = 1; } } __pyx_t_39 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_39, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_39, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_39, 2+__pyx_t_27, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_39, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_39, 4+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_39, 5+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 6+__pyx_t_27, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 7386, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_39 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_39 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_39); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_39 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7386, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_82 = Py_TYPE(__pyx_t_1)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L24_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_39 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_39)) goto __pyx_L24_unpacking_failed; __Pyx_GOTREF(__pyx_t_39); if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_1), 2) < 0) __PYX_ERR(0, 7386, __pyx_L1_error) __pyx_t_82 = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L25_unpacking_done; __pyx_L24_unpacking_failed:; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_82 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 7386, __pyx_L1_error) __pyx_L25_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7386, __pyx_L1_error) if (!(likely(((__pyx_t_39) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_39, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7386, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7386, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_39); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7386, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_39)); __pyx_t_39 = 0;
+7387: w = 0
__pyx_v_w = 0;
+7388: count = 0
__pyx_v_count = 0;
+7389: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+7390: xt = xtrial[w]
__pyx_t_83 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+7391: yt = ytrial[w]
__pyx_t_84 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+7392: if I[xt, yt] == 0:
__pyx_t_85 = __pyx_v_xt;
__pyx_t_86 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7393: I[xt, yt] = p + count + 1
__pyx_t_87 = __pyx_v_xt;
__pyx_t_88 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_88, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7394: X[p + count] = xt
__pyx_t_89 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7395: Y[p + count] = yt
__pyx_t_90 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7396: a[p + count] = 1
__pyx_t_91 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7397: MAJ[p + count] = 1
__pyx_t_92 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+7398: Rvals[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7398, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7398, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7398, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_25 = __pyx_v_Rfunc; __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_25))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7398, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_27, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_27, __pyx_int_0); __pyx_t_39 = 0; __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7398, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7398, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_93 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_Rvals.diminfo[0].strides) = __pyx_t_36;
+7399: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rvals[p + count], 1)
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_94 = (__pyx_v_p + __pyx_v_count); __pyx_t_7 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_Rvals.diminfo[0].strides))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_39 = __pyx_v_Thetafunc; __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_39))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_39); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_39); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_39, function); __pyx_t_27 = 1; } } __pyx_t_35 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_35, 0+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_35, 1+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_35, 2+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_35, 3+__pyx_t_27, __pyx_t_7); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_35, 4+__pyx_t_27, __pyx_int_1); __pyx_t_25 = 0; __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_39, __pyx_t_35, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7399, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7399, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_95 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+7400: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_96 = (__pyx_v_p + __pyx_v_count);
__pyx_t_97 = 0;
__pyx_t_98 = __pyx_v_xt;
__pyx_t_99 = __pyx_v_yt;
__pyx_t_100 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_col.diminfo[1].strides));
+7401: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_101 = (__pyx_v_p + __pyx_v_count);
__pyx_t_102 = 1;
__pyx_t_103 = __pyx_v_xt;
__pyx_t_104 = __pyx_v_yt;
__pyx_t_105 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_col.diminfo[1].strides));
+7402: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_106 = (__pyx_v_p + __pyx_v_count);
__pyx_t_107 = 2;
__pyx_t_108 = __pyx_v_xt;
__pyx_t_109 = __pyx_v_yt;
__pyx_t_110 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_col.diminfo[1].strides));
+7403: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7404: if w < dp - 1:
__pyx_t_24 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L29;
}
+7405: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
7406: else:
+7407: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_39 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_39);
__pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0;
__pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_39);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_8 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_35);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_35, function);
__pyx_t_27 = 1;
}
}
__pyx_t_25 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_8); __pyx_t_8 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_39);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_27, __pyx_t_39);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_27, __pyx_t_7);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 5+__pyx_t_27, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_39 = 0;
__pyx_t_7 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_25, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 7407, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_35 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_25 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_35 = PyList_GET_ITEM(sequence, 0);
__pyx_t_25 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_35);
__Pyx_INCREF(__pyx_t_25);
#else
__pyx_t_35 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__pyx_t_25 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7407, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_82 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_35 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_35)) goto __pyx_L30_unpacking_failed;
__Pyx_GOTREF(__pyx_t_35);
index = 1; __pyx_t_25 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_25)) goto __pyx_L30_unpacking_failed;
__Pyx_GOTREF(__pyx_t_25);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_1), 2) < 0) __PYX_ERR(0, 7407, __pyx_L1_error)
__pyx_t_82 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L31_unpacking_done;
__pyx_L30_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_82 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 7407, __pyx_L1_error)
__pyx_L31_unpacking_done:;
}
if (!(likely(((__pyx_t_35) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_35, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7407, __pyx_L1_error)
if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7407, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_35);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7407, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_35));
__pyx_t_35 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_25);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7407, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_25));
__pyx_t_25 = 0;
+7408: w = 0
__pyx_v_w = 0;
}
__pyx_L29:;
}
+7409: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7410: else:
+7411: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L33_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L33_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L33_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
break;
}
}
__pyx_L5:;
+7412: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_39 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_35); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_35, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_39) { __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_39); __pyx_t_39 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 5+__pyx_t_27, __pyx_t_7); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 6+__pyx_t_27, __pyx_int_1); __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 7412, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_35 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_8 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_35 = PyList_GET_ITEM(sequence, 0); __pyx_t_8 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(__pyx_t_8); #else __pyx_t_35 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7412, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_82 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_35 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_35)) goto __pyx_L36_unpacking_failed; __Pyx_GOTREF(__pyx_t_35); index = 1; __pyx_t_8 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_8)) goto __pyx_L36_unpacking_failed; __Pyx_GOTREF(__pyx_t_8); if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_7), 2) < 0) __PYX_ERR(0, 7412, __pyx_L1_error) __pyx_t_82 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L37_unpacking_done; __pyx_L36_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_82 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 7412, __pyx_L1_error) __pyx_L37_unpacking_done:; } if (!(likely(((__pyx_t_35) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_35, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7412, __pyx_L1_error) if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7412, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_35); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7412, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_35)); __pyx_t_35 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7412, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+7413: w = 0
__pyx_v_w = 0;
+7414: count = 0
__pyx_v_count = 0;
+7415: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+7416: xt = xtrial[w]
__pyx_t_111 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+7417: yt = ytrial[w]
__pyx_t_112 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+7418: if I[xt, yt] == 0:
__pyx_t_113 = __pyx_v_xt;
__pyx_t_114 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7419: I[xt, yt] = p + count + 1
__pyx_t_115 = __pyx_v_xt;
__pyx_t_116 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7420: X[p + count] = xt
__pyx_t_117 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7421: Y[p + count] = yt
__pyx_t_118 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7422: a[p + count] = 1
__pyx_t_119 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7423: MAJ[p + count] = 1
__pyx_t_120 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1;
+7424: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_1 = __pyx_v_Thetafunc; __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_27 = 1; } } __pyx_t_39 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_39, 1+__pyx_t_27, __pyx_t_35); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_39, 2+__pyx_t_27, __pyx_t_7); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 3+__pyx_t_27, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 4+__pyx_t_27, __pyx_int_1); __pyx_t_8 = 0; __pyx_t_35 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7424, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7424, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_121 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+7425: Rvals[p + count] = Rfunc(xt, yt, p + count + 1, 1, Theta[p + count])
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_122 = (__pyx_v_p + __pyx_v_count); __pyx_t_35 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_8 = __pyx_v_Rfunc; __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_27, __pyx_t_7); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_27, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_27, __pyx_t_35); __pyx_t_1 = 0; __pyx_t_39 = 0; __pyx_t_7 = 0; __pyx_t_35 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7425, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7425, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_123 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_Rvals.diminfo[0].strides) = __pyx_t_36;
+7426: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_124 = (__pyx_v_p + __pyx_v_count);
__pyx_t_125 = 0;
__pyx_t_126 = __pyx_v_xt;
__pyx_t_127 = __pyx_v_yt;
__pyx_t_128 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_col.diminfo[1].strides));
+7427: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_129 = (__pyx_v_p + __pyx_v_count);
__pyx_t_130 = 1;
__pyx_t_131 = __pyx_v_xt;
__pyx_t_132 = __pyx_v_yt;
__pyx_t_133 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_col.diminfo[1].strides));
+7428: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_134 = (__pyx_v_p + __pyx_v_count);
__pyx_t_135 = 2;
__pyx_t_136 = __pyx_v_xt;
__pyx_t_137 = __pyx_v_yt;
__pyx_t_138 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_135, __pyx_pybuffernd_col.diminfo[1].strides));
+7429: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7430: if w < dp - 1:
__pyx_t_24 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L41;
}
+7431: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
7432: else:
+7433: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_39 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_39 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_39)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_39);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
__pyx_t_27 = 1;
}
}
__pyx_t_1 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_39) {
__Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_39); __pyx_t_39 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_27, __pyx_t_8);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_35);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_27, __pyx_t_35);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_27, __pyx_t_7);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_35 = 0;
__pyx_t_7 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 7433, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_5 = PyList_GET_ITEM(sequence, 0);
__pyx_t_1 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_1);
#else
__pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7433, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_82 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_5 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L42_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
index = 1; __pyx_t_1 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L42_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_7), 2) < 0) __PYX_ERR(0, 7433, __pyx_L1_error)
__pyx_t_82 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L43_unpacking_done;
__pyx_L42_unpacking_failed:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_82 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 7433, __pyx_L1_error)
__pyx_L43_unpacking_done:;
}
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7433, __pyx_L1_error)
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7433, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7433, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7433, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
+7434: w = 0
__pyx_v_w = 0;
}
__pyx_L41:;
}
+7435: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7436:
+7437: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+7438: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
7439:
+7440: for k in range(0, p):
__pyx_t_139 = __pyx_v_p;
for (__pyx_t_140 = 0; __pyx_t_140 < __pyx_t_139; __pyx_t_140+=1) {
__pyx_v_k = __pyx_t_140;
+7441: if a[k] == 1:
__pyx_t_141 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_141, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+7442: a[k] = 0
__pyx_t_142 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+7443: xo = X[k]
__pyx_t_143 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_X.diminfo[0].strides));
+7444: yo = Y[k]
__pyx_t_144 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_Y.diminfo[0].strides));
+7445: Io = I[xo, yo]
__pyx_t_145 = __pyx_v_xo;
__pyx_t_146 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_I.diminfo[1].strides));
+7446: theta = Theta[k]
__pyx_t_147 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_Theta.diminfo[0].strides));
+7447: c = math.cos(theta)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7447, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_cos); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7447, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7447, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7447, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_35 = PyTuple_New(1+1); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7447, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_35, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_35, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7447, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 7447, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_c = __pyx_t_3;
+7448: s = -math.sin(theta)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_sin); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_35); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_35, function); } } if (!__pyx_t_1) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_35, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_t_35 = PyNumber_Negative(__pyx_t_6); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_35); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 7448, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_s = __pyx_t_3;
+7449: Maj = MAJ[k]
__pyx_t_148 = __pyx_v_k;
__pyx_v_Maj = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_MAJ.diminfo[0].strides));
+7450: Min = Maj / Rvals[k]
__pyx_t_149 = __pyx_v_k;
__pyx_v_Min = (((__pyx_t_5numpy_float64_t)__pyx_v_Maj) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rvals.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_Rvals.diminfo[0].strides)));
+7451: delX = math.ceil(math.sqrt((Maj * c) ** 2 + (Min * s) ** 2))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_c), 2.0) + powf((__pyx_v_Min * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_8) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_39 = PyTuple_New(1+1); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_39, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_1) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_35); } else { __pyx_t_39 = PyTuple_New(1+1); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_39, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_39, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_150 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_35); if (unlikely((__pyx_t_150 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7451, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_delX = __pyx_t_150;
+7452: delY = math.ceil(math.sqrt((Maj * s) ** 2 + (Min * c) ** 2))
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_39 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ceil); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_s), 2.0) + powf((__pyx_v_Min * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_39))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_39); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_39); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_39, function); } } if (!__pyx_t_1) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_39, __pyx_t_7); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_35); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_39, __pyx_t_8, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_150 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_35); if (unlikely((__pyx_t_150 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7452, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_delY = __pyx_t_150;
+7453: red = col[k, 0]
__pyx_t_150 = __pyx_v_k;
__pyx_t_151 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_151, __pyx_pybuffernd_col.diminfo[1].strides));
+7454: green = col[k, 1]
__pyx_t_152 = __pyx_v_k;
__pyx_t_153 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_153, __pyx_pybuffernd_col.diminfo[1].strides));
+7455: blue = col[k, 2]
__pyx_t_154 = __pyx_v_k;
__pyx_t_155 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_col.diminfo[1].strides));
7456:
+7457: for deli in range(0, delX + 1):
__pyx_t_156 = (__pyx_v_delX + 1);
for (__pyx_t_157 = 0; __pyx_t_157 < __pyx_t_156; __pyx_t_157+=1) {
__pyx_v_deli = __pyx_t_157;
+7458: for delj in range(0, delY + 1):
__pyx_t_158 = (__pyx_v_delY + 1);
for (__pyx_t_159 = 0; __pyx_t_159 < __pyx_t_158; __pyx_t_159+=1) {
__pyx_v_delj = __pyx_t_159;
+7459: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_24 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_24) {
/* … */
}
}
}
7460:
+7461: i, j = xo + deli, yo + delj
__pyx_t_160 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_161 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_160;
__pyx_v_j = __pyx_t_161;
+7462: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_162 = (__pyx_t_26 != 0);
if (__pyx_t_162) {
} else {
__pyx_t_24 = __pyx_t_162;
goto __pyx_L53_bool_binop_done;
}
__pyx_t_162 = (0 <= __pyx_v_j);
if (__pyx_t_162) {
__pyx_t_162 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_162 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L53_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+7463: if I[i, j] == 0:
__pyx_t_161 = __pyx_v_i;
__pyx_t_160 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_160, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7464: for dum in range(1):
for (__pyx_t_163 = 0; __pyx_t_163 < 1; __pyx_t_163+=1) {
__pyx_v_dum = __pyx_t_163;
7465:
+7466: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7467: if I[i - 1, j] == Io:
__pyx_t_164 = (__pyx_v_i - 1);
__pyx_t_165 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7468: I[i, j] = Io
__pyx_t_166 = __pyx_v_i;
__pyx_t_167 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_167, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7469: Col[i, j, 2] = red
__pyx_t_168 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_170 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7470: Col[i, j, 1] = green
__pyx_t_171 = __pyx_v_i;
__pyx_t_172 = __pyx_v_j;
__pyx_t_173 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7471: Col[i, j, 0] = blue
__pyx_t_174 = __pyx_v_i;
__pyx_t_175 = __pyx_v_j;
__pyx_t_176 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_176, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7472: a[k] = 1
__pyx_t_177 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7473: break
goto __pyx_L57_break;
+7474: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7475: if I[i, j - 1] == Io:
__pyx_t_178 = __pyx_v_i;
__pyx_t_179 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_178, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_179, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7476: I[i, j] = Io
__pyx_t_180 = __pyx_v_i;
__pyx_t_181 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_180, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_181, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7477: Col[i, j, 2] = red
__pyx_t_182 = __pyx_v_i;
__pyx_t_183 = __pyx_v_j;
__pyx_t_184 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_184, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7478: Col[i, j, 1] = green
__pyx_t_185 = __pyx_v_i;
__pyx_t_186 = __pyx_v_j;
__pyx_t_187 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7479: Col[i, j, 0] = blue
__pyx_t_188 = __pyx_v_i;
__pyx_t_189 = __pyx_v_j;
__pyx_t_190 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7480: a[k] = 1
__pyx_t_191 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7481: break
goto __pyx_L57_break;
7482:
+7483: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7484: if I[i, j + 1] == Io:
__pyx_t_192 = __pyx_v_i;
__pyx_t_193 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_192, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_193, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7485: I[i, j] = Io
__pyx_t_194 = __pyx_v_i;
__pyx_t_195 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_194, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_195, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7486: Col[i, j, 2] = red
__pyx_t_196 = __pyx_v_i;
__pyx_t_197 = __pyx_v_j;
__pyx_t_198 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7487: Col[i, j, 1] = green
__pyx_t_199 = __pyx_v_i;
__pyx_t_200 = __pyx_v_j;
__pyx_t_201 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7488: Col[i, j, 0] = blue
__pyx_t_202 = __pyx_v_i;
__pyx_t_203 = __pyx_v_j;
__pyx_t_204 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7489: a[k] = 1
__pyx_t_205 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7490: break
goto __pyx_L57_break;
7491:
7492:
+7493: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L57_break:;
+7494: if I[i + 1, j] == Io:
__pyx_t_206 = (__pyx_v_i + 1);
__pyx_t_207 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_206, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_207, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7495: I[i, j] = Io
__pyx_t_208 = __pyx_v_i;
__pyx_t_209 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_209, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7496: Col[i, j, 2] = red
__pyx_t_210 = __pyx_v_i;
__pyx_t_211 = __pyx_v_j;
__pyx_t_212 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_210, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_211, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_212, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7497: Col[i, j, 1] = green
__pyx_t_213 = __pyx_v_i;
__pyx_t_214 = __pyx_v_j;
__pyx_t_215 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_213, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_214, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_215, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7498: Col[i, j, 0] = blue
__pyx_t_216 = __pyx_v_i;
__pyx_t_217 = __pyx_v_j;
__pyx_t_218 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_216, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7499: a[k] = 1
__pyx_t_219 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_219, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7500: break
goto __pyx_L57_break;
7501:
7502:
+7503: i, j = xo - deli, yo - delj
__pyx_t_163 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_220 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_163;
__pyx_v_j = __pyx_t_220;
+7504: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_162 = (__pyx_t_26 != 0);
if (__pyx_t_162) {
} else {
__pyx_t_24 = __pyx_t_162;
goto __pyx_L67_bool_binop_done;
}
__pyx_t_162 = (0 <= __pyx_v_j);
if (__pyx_t_162) {
__pyx_t_162 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_162 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L67_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+7505: if I[i, j] == 0:
__pyx_t_220 = __pyx_v_i;
__pyx_t_163 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_220, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7506: for dum in range(1):
for (__pyx_t_221 = 0; __pyx_t_221 < 1; __pyx_t_221+=1) {
__pyx_v_dum = __pyx_t_221;
7507:
+7508: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7509: if I[i - 1, j] == Io:
__pyx_t_222 = (__pyx_v_i - 1);
__pyx_t_223 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_222, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_223, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7510: I[i, j] = Io
__pyx_t_224 = __pyx_v_i;
__pyx_t_225 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_224, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_225, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7511: Col[i, j, 2] = red
__pyx_t_226 = __pyx_v_i;
__pyx_t_227 = __pyx_v_j;
__pyx_t_228 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_228, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7512: Col[i, j, 1] = green
__pyx_t_229 = __pyx_v_i;
__pyx_t_230 = __pyx_v_j;
__pyx_t_231 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_229, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7513: Col[i, j, 0] = blue
__pyx_t_232 = __pyx_v_i;
__pyx_t_233 = __pyx_v_j;
__pyx_t_234 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7514: a[k] = 1
__pyx_t_235 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7515: break
goto __pyx_L71_break;
+7516: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7517: if I[i, j - 1] == Io:
__pyx_t_236 = __pyx_v_i;
__pyx_t_237 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_236, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_237, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7518: I[i, j] = Io
__pyx_t_238 = __pyx_v_i;
__pyx_t_239 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_238, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_239, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7519: Col[i, j, 2] = red
__pyx_t_240 = __pyx_v_i;
__pyx_t_241 = __pyx_v_j;
__pyx_t_242 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7520: Col[i, j, 1] = green
__pyx_t_243 = __pyx_v_i;
__pyx_t_244 = __pyx_v_j;
__pyx_t_245 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7521: Col[i, j, 0] = blue
__pyx_t_246 = __pyx_v_i;
__pyx_t_247 = __pyx_v_j;
__pyx_t_248 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_246, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_248, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7522: a[k] = 1
__pyx_t_249 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7523: break
goto __pyx_L71_break;
7524:
+7525: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7526: if I[i, j + 1] == Io:
__pyx_t_250 = __pyx_v_i;
__pyx_t_251 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_250, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_251, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7527: I[i, j] = Io
__pyx_t_252 = __pyx_v_i;
__pyx_t_253 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_252, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_253, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7528: Col[i, j, 2] = red
__pyx_t_254 = __pyx_v_i;
__pyx_t_255 = __pyx_v_j;
__pyx_t_256 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7529: Col[i, j, 1] = green
__pyx_t_257 = __pyx_v_i;
__pyx_t_258 = __pyx_v_j;
__pyx_t_259 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_259, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7530: Col[i, j, 0] = blue
__pyx_t_260 = __pyx_v_i;
__pyx_t_261 = __pyx_v_j;
__pyx_t_262 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_260, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7531: a[k] = 1
__pyx_t_263 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_263, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7532: break
goto __pyx_L71_break;
7533:
7534:
+7535: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L71_break:;
+7536: if I[i + 1, j] == Io:
__pyx_t_264 = (__pyx_v_i + 1);
__pyx_t_265 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_264, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_265, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7537: I[i, j] = Io
__pyx_t_266 = __pyx_v_i;
__pyx_t_267 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_267, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7538: Col[i, j, 2] = red
__pyx_t_268 = __pyx_v_i;
__pyx_t_269 = __pyx_v_j;
__pyx_t_270 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7539: Col[i, j, 1] = green
__pyx_t_271 = __pyx_v_i;
__pyx_t_272 = __pyx_v_j;
__pyx_t_273 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_272, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_273, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7540: Col[i, j, 0] = blue
__pyx_t_274 = __pyx_v_i;
__pyx_t_275 = __pyx_v_j;
__pyx_t_276 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_274, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7541: a[k] = 1
__pyx_t_277 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7542: break
goto __pyx_L71_break;
7543:
+7544: for deli in range(0, -delX - 1, -1):
__pyx_t_156 = ((-__pyx_v_delX) - 1);
for (__pyx_t_157 = 0; __pyx_t_157 > __pyx_t_156; __pyx_t_157-=1) {
__pyx_v_deli = __pyx_t_157;
+7545: for delj in range(0, delY + 1):
__pyx_t_158 = (__pyx_v_delY + 1);
for (__pyx_t_159 = 0; __pyx_t_159 < __pyx_t_158; __pyx_t_159+=1) {
__pyx_v_delj = __pyx_t_159;
+7546: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_24 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_24) {
/* … */
}
}
}
7547:
+7548: i, j = xo + deli, yo + delj
__pyx_t_221 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_278 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_221;
__pyx_v_j = __pyx_t_278;
+7549: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_162 = (__pyx_t_26 != 0);
if (__pyx_t_162) {
} else {
__pyx_t_24 = __pyx_t_162;
goto __pyx_L86_bool_binop_done;
}
__pyx_t_162 = (0 <= __pyx_v_j);
if (__pyx_t_162) {
__pyx_t_162 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_162 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L86_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+7550: if I[i, j] == 0:
__pyx_t_278 = __pyx_v_i;
__pyx_t_221 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_278, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_221, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7551: for dum in range(1):
for (__pyx_t_279 = 0; __pyx_t_279 < 1; __pyx_t_279+=1) {
__pyx_v_dum = __pyx_t_279;
7552:
+7553: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7554: if I[i - 1, j] == Io:
__pyx_t_280 = (__pyx_v_i - 1);
__pyx_t_281 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_280, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_281, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7555: I[i, j] = Io
__pyx_t_282 = __pyx_v_i;
__pyx_t_283 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_283, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7556: Col[i, j, 2] = red
__pyx_t_284 = __pyx_v_i;
__pyx_t_285 = __pyx_v_j;
__pyx_t_286 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_286, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7557: Col[i, j, 1] = green
__pyx_t_287 = __pyx_v_i;
__pyx_t_288 = __pyx_v_j;
__pyx_t_289 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_287, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7558: Col[i, j, 0] = blue
__pyx_t_290 = __pyx_v_i;
__pyx_t_291 = __pyx_v_j;
__pyx_t_292 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7559: a[k] = 1
__pyx_t_293 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7560: break
goto __pyx_L90_break;
+7561: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7562: if I[i, j - 1] == Io:
__pyx_t_294 = __pyx_v_i;
__pyx_t_295 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_294, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_295, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7563: I[i, j] = Io
__pyx_t_296 = __pyx_v_i;
__pyx_t_297 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_296, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_297, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7564: Col[i, j, 2] = red
__pyx_t_298 = __pyx_v_i;
__pyx_t_299 = __pyx_v_j;
__pyx_t_300 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7565: Col[i, j, 1] = green
__pyx_t_301 = __pyx_v_i;
__pyx_t_302 = __pyx_v_j;
__pyx_t_303 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_301, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7566: Col[i, j, 0] = blue
__pyx_t_304 = __pyx_v_i;
__pyx_t_305 = __pyx_v_j;
__pyx_t_306 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_304, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7567: a[k] = 1
__pyx_t_307 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_307, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7568: break
goto __pyx_L90_break;
7569:
+7570: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7571: if I[i, j + 1] == Io:
__pyx_t_308 = __pyx_v_i;
__pyx_t_309 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_308, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_309, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7572: I[i, j] = Io
__pyx_t_310 = __pyx_v_i;
__pyx_t_311 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_310, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_311, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7573: Col[i, j, 2] = red
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = __pyx_v_j;
__pyx_t_314 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7574: Col[i, j, 1] = green
__pyx_t_315 = __pyx_v_i;
__pyx_t_316 = __pyx_v_j;
__pyx_t_317 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_315, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_316, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_317, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7575: Col[i, j, 0] = blue
__pyx_t_318 = __pyx_v_i;
__pyx_t_319 = __pyx_v_j;
__pyx_t_320 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_318, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7576: a[k] = 1
__pyx_t_321 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7577: break
goto __pyx_L90_break;
7578:
7579:
+7580: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L90_break:;
+7581: if I[i + 1, j] == Io:
__pyx_t_322 = (__pyx_v_i + 1);
__pyx_t_323 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_322, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_323, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7582: I[i, j] = Io
__pyx_t_324 = __pyx_v_i;
__pyx_t_325 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_324, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_325, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7583: Col[i, j, 2] = red
__pyx_t_326 = __pyx_v_i;
__pyx_t_327 = __pyx_v_j;
__pyx_t_328 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7584: Col[i, j, 1] = green
__pyx_t_329 = __pyx_v_i;
__pyx_t_330 = __pyx_v_j;
__pyx_t_331 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_329, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_330, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_331, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7585: Col[i, j, 0] = blue
__pyx_t_332 = __pyx_v_i;
__pyx_t_333 = __pyx_v_j;
__pyx_t_334 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_332, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_333, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7586: a[k] = 1
__pyx_t_335 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_335, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7587: break
goto __pyx_L90_break;
7588:
7589:
+7590: i, j = xo - deli, yo - delj
__pyx_t_279 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_336 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_279;
__pyx_v_j = __pyx_t_336;
+7591: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_162 = (__pyx_t_26 != 0);
if (__pyx_t_162) {
} else {
__pyx_t_24 = __pyx_t_162;
goto __pyx_L100_bool_binop_done;
}
__pyx_t_162 = (0 <= __pyx_v_j);
if (__pyx_t_162) {
__pyx_t_162 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_162 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L100_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+7592: if I[i, j] == 0:
__pyx_t_336 = __pyx_v_i;
__pyx_t_279 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_336, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_279, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7593: for dum in range(1):
for (__pyx_t_337 = 0; __pyx_t_337 < 1; __pyx_t_337+=1) {
__pyx_v_dum = __pyx_t_337;
7594:
+7595: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7596: if I[i - 1, j] == Io:
__pyx_t_338 = (__pyx_v_i - 1);
__pyx_t_339 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_338, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_339, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7597: I[i, j] = Io
__pyx_t_340 = __pyx_v_i;
__pyx_t_341 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_340, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_341, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7598: Col[i, j, 2] = red
__pyx_t_342 = __pyx_v_i;
__pyx_t_343 = __pyx_v_j;
__pyx_t_344 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_343, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_344, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7599: Col[i, j, 1] = green
__pyx_t_345 = __pyx_v_i;
__pyx_t_346 = __pyx_v_j;
__pyx_t_347 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_345, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_346, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_347, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7600: Col[i, j, 0] = blue
__pyx_t_348 = __pyx_v_i;
__pyx_t_349 = __pyx_v_j;
__pyx_t_350 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_348, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7601: a[k] = 1
__pyx_t_351 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_351, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7602: break
goto __pyx_L104_break;
+7603: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7604: if I[i, j - 1] == Io:
__pyx_t_352 = __pyx_v_i;
__pyx_t_353 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_352, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_353, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7605: I[i, j] = Io
__pyx_t_354 = __pyx_v_i;
__pyx_t_355 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_354, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_355, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7606: Col[i, j, 2] = red
__pyx_t_356 = __pyx_v_i;
__pyx_t_357 = __pyx_v_j;
__pyx_t_358 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_356, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_357, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_358, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7607: Col[i, j, 1] = green
__pyx_t_359 = __pyx_v_i;
__pyx_t_360 = __pyx_v_j;
__pyx_t_361 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_359, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_360, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_361, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7608: Col[i, j, 0] = blue
__pyx_t_362 = __pyx_v_i;
__pyx_t_363 = __pyx_v_j;
__pyx_t_364 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_362, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_363, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7609: a[k] = 1
__pyx_t_365 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_365, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7610: break
goto __pyx_L104_break;
7611:
+7612: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+7613: if I[i, j + 1] == Io:
__pyx_t_366 = __pyx_v_i;
__pyx_t_367 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_366, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_367, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7614: I[i, j] = Io
__pyx_t_368 = __pyx_v_i;
__pyx_t_369 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_368, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_369, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7615: Col[i, j, 2] = red
__pyx_t_370 = __pyx_v_i;
__pyx_t_371 = __pyx_v_j;
__pyx_t_372 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_371, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_372, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7616: Col[i, j, 1] = green
__pyx_t_373 = __pyx_v_i;
__pyx_t_374 = __pyx_v_j;
__pyx_t_375 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_373, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_374, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_375, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7617: Col[i, j, 0] = blue
__pyx_t_376 = __pyx_v_i;
__pyx_t_377 = __pyx_v_j;
__pyx_t_378 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_376, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_377, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7618: a[k] = 1
__pyx_t_379 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_379, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7619: break
goto __pyx_L104_break;
7620:
7621:
+7622: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L104_break:;
+7623: if I[i + 1, j] == Io:
__pyx_t_380 = (__pyx_v_i + 1);
__pyx_t_381 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_380, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_381, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+7624: I[i, j] = Io
__pyx_t_382 = __pyx_v_i;
__pyx_t_383 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_382, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_383, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7625: Col[i, j, 2] = red
__pyx_t_384 = __pyx_v_i;
__pyx_t_385 = __pyx_v_j;
__pyx_t_386 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_385, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_386, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7626: Col[i, j, 1] = green
__pyx_t_387 = __pyx_v_i;
__pyx_t_388 = __pyx_v_j;
__pyx_t_389 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_387, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_388, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_389, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7627: Col[i, j, 0] = blue
__pyx_t_390 = __pyx_v_i;
__pyx_t_391 = __pyx_v_j;
__pyx_t_392 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_390, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_391, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7628: a[k] = 1
__pyx_t_393 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_393, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7629: break
goto __pyx_L104_break;
7630:
7631:
7632:
+7633: if a[k] == 0:
__pyx_t_156 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+7634: xmin = max(0, xo - delX)
__pyx_t_157 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_394 = 0;
if (((__pyx_t_157 > __pyx_t_394) != 0)) {
__pyx_t_158 = __pyx_t_157;
} else {
__pyx_t_158 = __pyx_t_394;
}
__pyx_v_xmin = __pyx_t_158;
+7635: xmax = min(m - 1, xo + delX)
__pyx_t_158 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_157 = (__pyx_v_m - 1);
if (((__pyx_t_158 < __pyx_t_157) != 0)) {
__pyx_t_159 = __pyx_t_158;
} else {
__pyx_t_159 = __pyx_t_157;
}
__pyx_v_xmax = __pyx_t_159;
+7636: ymin = max(0, yo - delY)
__pyx_t_159 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_394 = 0;
if (((__pyx_t_159 > __pyx_t_394) != 0)) {
__pyx_t_158 = __pyx_t_159;
} else {
__pyx_t_158 = __pyx_t_394;
}
__pyx_v_ymin = __pyx_t_158;
+7637: ymax = min(n - 1, yo + delY)
__pyx_t_158 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_159 = (__pyx_v_n - 1);
if (((__pyx_t_158 < __pyx_t_159) != 0)) {
__pyx_t_157 = __pyx_t_158;
} else {
__pyx_t_157 = __pyx_t_159;
}
__pyx_v_ymax = __pyx_t_157;
+7638: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_157 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
7639:
7640:
+7641: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+7642: for i in range(p):
__pyx_t_139 = __pyx_v_p;
for (__pyx_t_140 = 0; __pyx_t_140 < __pyx_t_139; __pyx_t_140+=1) {
__pyx_v_i = __pyx_t_140;
+7643: MAJ[i] = MAJ[i] + 1
__pyx_t_158 = __pyx_v_i;
__pyx_t_159 = __pyx_v_i;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + 1);
}
7644:
+7645: nnz = cv2.countNonZero(I)
__pyx_t_39 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_39 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_39) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_8, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_39); __pyx_t_39 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_7, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_139 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_35); if (unlikely((__pyx_t_139 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7645, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_nnz = __pyx_t_139; }
7646:
+7647: obj.p = p
__pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_35) < 0) __PYX_ERR(0, 7647, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+7648: toc = time.time()
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_8) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7648, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } else { __pyx_t_35 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7648, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_35); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7648, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_toc = __pyx_t_23;
+7649: obj.exetime = toc - tic
__pyx_t_35 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7649, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_35) < 0) __PYX_ERR(0, 7649, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+7650: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_delete); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_39 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_6); __pyx_t_39 = 0; __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_35) < 0) __PYX_ERR(0, 7650, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+7651: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_delete); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_39 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_39) { __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_39); __pyx_t_39 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_6); __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_5, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_35) < 0) __PYX_ERR(0, 7651, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+7652: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 7652, __pyx_L1_error)
+7653: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 7653, __pyx_L1_error)
+7654: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
7655:
+7656: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_55Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_55Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_55Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_55Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_54Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_54Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_seq;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
PY_LONG_LONG __pyx_v_imin;
PY_LONG_LONG __pyx_v_imax;
PY_LONG_LONG __pyx_v_jmin;
PY_LONG_LONG __pyx_v_jmax;
PY_LONG_LONG __pyx_v_io;
PY_LONG_LONG __pyx_v_jo;
PY_LONG_LONG __pyx_v_go;
PY_LONG_LONG __pyx_v_found;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_l1;
PY_LONG_LONG __pyx_v_l2;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_MAJceil;
PY_LONG_LONG __pyx_v_MINceil;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_adotValmax;
float __pyx_v_tmp;
float __pyx_v_MIN;
float __pyx_v_dr;
float __pyx_v_t;
float __pyx_v_dt;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_II = 0;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_Rval = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
PyObject *__pyx_v_f = NULL;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_II;
__Pyx_Buffer __pyx_pybuffer_II;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rval;
__Pyx_Buffer __pyx_pybuffer_Rval;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot", 0);
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_II.pybuffer.buf = NULL;
__pyx_pybuffer_II.refcount = 0;
__pyx_pybuffernd_II.data = NULL;
__pyx_pybuffernd_II.rcbuffer = &__pyx_pybuffer_II;
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_Rval.pybuffer.buf = NULL;
__pyx_pybuffer_Rval.refcount = 0;
__pyx_pybuffernd_Rval.data = NULL;
__pyx_pybuffernd_Rval.rcbuffer = &__pyx_pybuffer_Rval;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_26);
__Pyx_XDECREF(__pyx_t_36);
__Pyx_XDECREF(__pyx_t_40);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_II.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_II);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_Rval);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XDECREF(__pyx_v_f);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__65 = PyTuple_Pack(82, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_fd, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_pdelNxy, __pyx_n_s_Adotfunc, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_win, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_imin, __pyx_n_s_imax, __pyx_n_s_jmin, __pyx_n_s_jmax, __pyx_n_s_io, __pyx_n_s_jo, __pyx_n_s_go, __pyx_n_s_found, __pyx_n_s_dum, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_count, __pyx_n_s_l1, __pyx_n_s_l2, __pyx_n_s_countim, __pyx_n_s_MAJceil, __pyx_n_s_MINceil, __pyx_n_s_nnz, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_dp, __pyx_n_s_p, __pyx_n_s_w, __pyx_n_s_Iter, __pyx_n_s_adotValmax, __pyx_n_s_tmp, __pyx_n_s_MIN, __pyx_n_s_dr, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_t, __pyx_n_s_dt, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_adotVal, __pyx_n_s_II, __pyx_n_s_MAJ, __pyx_n_s_Rval, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_f); if (unlikely(!__pyx_tuple__65)) __PYX_ERR(0, 7656, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__65);
__Pyx_GIVEREF(__pyx_tuple__65);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_55Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_without_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7656, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_10, __pyx_t_2) < 0) __PYX_ERR(0, 7656, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__66 = (PyObject*)__Pyx_PyCode_New(1, 0, 82, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__65, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_10, 7656, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__66)) __PYX_ERR(0, 7656, __pyx_L1_error)
7657: # Grabbing data from the input object
+7658: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7658, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7658, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+7659: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7659, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+7660: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7660, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+7661: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7661, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7661, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+7662: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7662, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 7662, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+7663: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+7664: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7664, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7664, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+7665: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7665, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 7665, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+7666: cdef long long seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7666, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7666, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_2;
+7667: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+7668: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7668, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+7669: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7669, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+7670: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7670, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+7671: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7671, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
+7672: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7672, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
7673:
7674: # Declaring other variables
7675: cdef double tic, toc
7676: cdef long long deli, delj, PN, PE, PW, PS, Io, win, xmin, xmax, ymin, ymax, imin, imax, jmin, jmax, io, jo, go, found, dum, i, j, k, xo, yo, count, l1, l2, countim, MAJceil, MINceil, nnz, xt, yt, dp, p, w, Iter
7677: cdef float adotValmax, tmp, MIN, dr, theta, c, s, t, dt, red, green, blue
+7678: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7678, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7678, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7678, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_9 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+7679: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ones); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7679, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7679, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7679, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+7680: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7680, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7680, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7680, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+7681: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7681, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7681, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7681, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+7682: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(MN, dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7682, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7682, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7682, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+7683: cdef np.ndarray[np.int_t, ndim = 2] II = np.zeros((m, n), dtype=np.int)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7683, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7683, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_II.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_II = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_II.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7683, __pyx_L1_error) } else {__pyx_pybuffernd_II.diminfo[0].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_II.diminfo[0].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_II.diminfo[1].strides = __pyx_pybuffernd_II.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_II.diminfo[1].shape = __pyx_pybuffernd_II.rcbuffer->pybuffer.shape[1]; } } __pyx_t_14 = 0; __pyx_v_II = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+7684: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7684, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7684, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7684, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+7685: cdef np.ndarray[np.float64_t, ndim = 1] Rval = np.zeros(MN, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7685, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7685, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Rval = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7685, __pyx_L1_error) } else {__pyx_pybuffernd_Rval.diminfo[0].strides = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rval.diminfo[0].shape = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Rval = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+7686: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7686, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7686, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7686, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+7687: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7687, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7687, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7687, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_18 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+7688: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7688, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7688, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_19 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+7689: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7689, __pyx_L1_error) __pyx_t_20 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_20, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 7689, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_20 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+7690: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7690, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7690, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7690, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7690, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7690, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+7691: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7691, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7691, __pyx_L1_error) __pyx_t_20 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_20, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7691, __pyx_L1_error) } __pyx_t_20 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+7692: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7692, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7692, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_6) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7692, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7692, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_24 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_24 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 7692, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_tic = __pyx_t_24;
7693:
+7694: countim = 1
__pyx_v_countim = 1;
+7695: count = 0
__pyx_v_count = 0;
+7696: nnz = 0
__pyx_v_nnz = 0;
+7697: t = 0
__pyx_v_t = 0.0;
+7698: p = 0
__pyx_v_p = 0;
7699:
+7700: Iter = 1
__pyx_v_Iter = 1;
+7701: while nnz < MN:
while (1) {
__pyx_t_25 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_25) break;
+7702: f = nnz / MN
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_nnz / __pyx_v_MN)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7702, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_XDECREF_SET(__pyx_v_f, __pyx_t_1); __pyx_t_1 = 0;
+7703: dt = 1.0 / Gt(t)
__pyx_t_7 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7703, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7703, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7703, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7703, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_1, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7703, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 7703, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+7704: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = __Pyx_PyInt_SubtractCObj(__pyx_int_1, __pyx_v_f, 1, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_7 = __pyx_v_Ndot; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_8) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_26 = PyTuple_New(1+1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_26, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyNumber_Multiply(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyNumber_Multiply(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7704, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_dp = __pyx_t_2;
+7705: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+7706: if pdelNxy == []:
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7706, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7706, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_25 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_25 < 0)) __PYX_ERR(0, 7706, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_25) { /* … */ goto __pyx_L5; }
+7707: if seq == 1 or seq == 3 or seq == 4:
switch (__pyx_v_seq) {
case 1:
case 3:
case 4:
/* … */
break;
default:
+7708: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L7_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+7709: count = 0
__pyx_v_count = 0;
+7710: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+7711: xt = np.random.randint(0, m - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7711, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7711, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+7712: yt = np.random.randint(0, n - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7712, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7712, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+7713: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_29 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_29, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+7714: I[xt, yt] = p + count + 1
__pyx_t_30 = __pyx_v_xt;
__pyx_t_31 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_31, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7715: X[p + count] = xt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7716: Y[p + count] = yt
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7717: a[p + count] = 1
__pyx_t_34 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7718: MAJ[p + count] = 1
__pyx_t_35 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+7719: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_7 = __pyx_v_Rfunc; __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_int_0); __pyx_t_1 = 0; __pyx_t_26 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7719, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_38 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+7720: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, Rval[p + count])
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_39 = (__pyx_v_p + __pyx_v_count); __pyx_t_26 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_1 = __pyx_v_Adotfunc; __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_26); __pyx_t_7 = 0; __pyx_t_36 = 0; __pyx_t_5 = 0; __pyx_t_26 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7720, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7720, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_41 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+7721: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_42 = (__pyx_v_p + __pyx_v_count);
__pyx_t_43 = 0;
__pyx_t_44 = __pyx_v_xt;
__pyx_t_45 = __pyx_v_yt;
__pyx_t_46 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_43, __pyx_pybuffernd_col.diminfo[1].strides));
+7722: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_47 = (__pyx_v_p + __pyx_v_count);
__pyx_t_48 = 1;
__pyx_t_49 = __pyx_v_xt;
__pyx_t_50 = __pyx_v_yt;
__pyx_t_51 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_48, __pyx_pybuffernd_col.diminfo[1].strides));
+7723: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_52 = (__pyx_v_p + __pyx_v_count);
__pyx_t_53 = 2;
__pyx_t_54 = __pyx_v_xt;
__pyx_t_55 = __pyx_v_yt;
__pyx_t_56 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_56, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_52, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_53, __pyx_pybuffernd_col.diminfo[1].strides));
+7724: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7725: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7726: else:
+7727: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L14_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
break;
}
+7728: count = 0
__pyx_v_count = 0;
+7729: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+7730: xt = np.random.randint(0, m - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_40 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_40, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_40); __pyx_t_40 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_57 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_57 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7730, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_57;
+7731: yt = np.random.randint(0, n - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_57 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_57 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7731, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_57;
+7732: if I[xt, yt] == 0:
__pyx_t_57 = __pyx_v_xt;
__pyx_t_58 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_58, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+7733: I[xt, yt] = p + count + 1
__pyx_t_59 = __pyx_v_xt;
__pyx_t_60 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_59, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_60, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7734: X[p + count] = xt
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7735: Y[p + count] = yt
__pyx_t_62 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7736: a[p + count] = 1
__pyx_t_63 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7737: MAJ[p + count] = 1
__pyx_t_64 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+7738: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_40 = __pyx_v_Adotfunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_40))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_40); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_40); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_40, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_26 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_40, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7738, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_65 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+7739: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], 0)
__pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_66 = (__pyx_v_p + __pyx_v_count); __pyx_t_26 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_1 = __pyx_v_Rfunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_28, __pyx_t_26); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_28, __pyx_int_0); __pyx_t_40 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_26 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7739, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_67 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+7740: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_68 = (__pyx_v_p + __pyx_v_count);
__pyx_t_69 = 0;
__pyx_t_70 = __pyx_v_xt;
__pyx_t_71 = __pyx_v_yt;
__pyx_t_72 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_72, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_69, __pyx_pybuffernd_col.diminfo[1].strides));
+7741: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_73 = (__pyx_v_p + __pyx_v_count);
__pyx_t_74 = 1;
__pyx_t_75 = __pyx_v_xt;
__pyx_t_76 = __pyx_v_yt;
__pyx_t_77 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_74, __pyx_pybuffernd_col.diminfo[1].strides));
+7742: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_78 = (__pyx_v_p + __pyx_v_count);
__pyx_t_79 = 2;
__pyx_t_80 = __pyx_v_xt;
__pyx_t_81 = __pyx_v_yt;
__pyx_t_82 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_82, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_78, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_79, __pyx_pybuffernd_col.diminfo[1].strides));
+7743: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7744: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7745: else:
+7746: if seq == 1 or seq == 3 or seq == 4:
/*else*/ {
switch (__pyx_v_seq) {
case 1:
case 3:
case 4:
/* … */
break;
default:
+7747: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L21_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+7748: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 5+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_40, 6+__pyx_t_28, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_26 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 7748, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_8 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_40 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_8 = PyList_GET_ITEM(sequence, 0); __pyx_t_40 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(__pyx_t_40); #else __pyx_t_8 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_40 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7748, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_83 = Py_TYPE(__pyx_t_5)->tp_iternext; index = 0; __pyx_t_8 = __pyx_t_83(__pyx_t_5); if (unlikely(!__pyx_t_8)) goto __pyx_L24_unpacking_failed; __Pyx_GOTREF(__pyx_t_8); index = 1; __pyx_t_40 = __pyx_t_83(__pyx_t_5); if (unlikely(!__pyx_t_40)) goto __pyx_L24_unpacking_failed; __Pyx_GOTREF(__pyx_t_40); if (__Pyx_IternextUnpackEndCheck(__pyx_t_83(__pyx_t_5), 2) < 0) __PYX_ERR(0, 7748, __pyx_L1_error) __pyx_t_83 = NULL; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; goto __pyx_L25_unpacking_done; __pyx_L24_unpacking_failed:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_83 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 7748, __pyx_L1_error) __pyx_L25_unpacking_done:; } if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7748, __pyx_L1_error) if (!(likely(((__pyx_t_40) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_40, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7748, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7748, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0; __pyx_t_18 = ((PyArrayObject *)__pyx_t_40); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7748, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_40)); __pyx_t_40 = 0;
+7749: w = 0
__pyx_v_w = 0;
+7750: count = 0
__pyx_v_count = 0;
+7751: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+7752: xt = xtrial[w]
__pyx_t_84 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+7753: yt = ytrial[w]
__pyx_t_85 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+7754: if I[xt, yt] == 0:
__pyx_t_86 = __pyx_v_xt;
__pyx_t_87 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_86, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_87, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7755: I[xt, yt] = p + count + 1
__pyx_t_88 = __pyx_v_xt;
__pyx_t_89 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_88, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_89, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7756: X[p + count] = xt
__pyx_t_90 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7757: Y[p + count] = yt
__pyx_t_91 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7758: a[p + count] = 1
__pyx_t_92 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7759: MAJ[p + count] = 1
__pyx_t_93 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+7760: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_26 = __pyx_v_Rfunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_int_0); __pyx_t_40 = 0; __pyx_t_8 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7760, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_94 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+7761: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, Rval[p + count])
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_95 = (__pyx_v_p + __pyx_v_count); __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_40 = __pyx_v_Adotfunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_40))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_40); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_40); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_40, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_t_8); __pyx_t_26 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_40, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7761, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_96 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+7762: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_97 = (__pyx_v_p + __pyx_v_count);
__pyx_t_98 = 0;
__pyx_t_99 = __pyx_v_xt;
__pyx_t_100 = __pyx_v_yt;
__pyx_t_101 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_101, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_98, __pyx_pybuffernd_col.diminfo[1].strides));
+7763: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_102 = (__pyx_v_p + __pyx_v_count);
__pyx_t_103 = 1;
__pyx_t_104 = __pyx_v_xt;
__pyx_t_105 = __pyx_v_yt;
__pyx_t_106 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_106, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_103, __pyx_pybuffernd_col.diminfo[1].strides));
+7764: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_107 = (__pyx_v_p + __pyx_v_count);
__pyx_t_108 = 2;
__pyx_t_109 = __pyx_v_xt;
__pyx_t_110 = __pyx_v_yt;
__pyx_t_111 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_col.diminfo[1].strides));
+7765: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7766: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L29;
}
+7767: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
7768: else:
+7769: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_40 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_40);
__pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_40, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
__Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0;
__pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_40);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_36);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_36, function);
__pyx_t_28 = 1;
}
}
__pyx_t_26 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_7); __pyx_t_7 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_40);
PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_40);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_26, 5+__pyx_t_28, __pyx_t_5);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_26, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_40 = 0;
__pyx_t_8 = 0;
__pyx_t_5 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
__Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 7769, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_36 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_26 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_36 = PyList_GET_ITEM(sequence, 0);
__pyx_t_26 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_36);
__Pyx_INCREF(__pyx_t_26);
#else
__pyx_t_36 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
__pyx_t_26 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7769, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_83 = Py_TYPE(__pyx_t_5)->tp_iternext;
index = 0; __pyx_t_36 = __pyx_t_83(__pyx_t_5); if (unlikely(!__pyx_t_36)) goto __pyx_L30_unpacking_failed;
__Pyx_GOTREF(__pyx_t_36);
index = 1; __pyx_t_26 = __pyx_t_83(__pyx_t_5); if (unlikely(!__pyx_t_26)) goto __pyx_L30_unpacking_failed;
__Pyx_GOTREF(__pyx_t_26);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_83(__pyx_t_5), 2) < 0) __PYX_ERR(0, 7769, __pyx_L1_error)
__pyx_t_83 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L31_unpacking_done;
__pyx_L30_unpacking_failed:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_83 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 7769, __pyx_L1_error)
__pyx_L31_unpacking_done:;
}
if (!(likely(((__pyx_t_36) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_36, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7769, __pyx_L1_error)
if (!(likely(((__pyx_t_26) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_26, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7769, __pyx_L1_error)
__pyx_t_17 = ((PyArrayObject *)__pyx_t_36);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7769, __pyx_L1_error)
}
__pyx_t_17 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_36));
__pyx_t_36 = 0;
__pyx_t_18 = ((PyArrayObject *)__pyx_t_26);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7769, __pyx_L1_error)
}
__pyx_t_18 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_26));
__pyx_t_26 = 0;
+7770: w = 0
__pyx_v_w = 0;
}
__pyx_L29:;
}
+7771: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7772: else:
+7773: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L33_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L33_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L33_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
break;
}
}
__pyx_L5:;
+7774: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_26 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_26, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_26); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 5+__pyx_t_28, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 6+__pyx_t_28, __pyx_int_1); __pyx_t_26 = 0; __pyx_t_5 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 7774, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_36 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_36 = PyList_GET_ITEM(sequence, 0); __pyx_t_7 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(__pyx_t_7); #else __pyx_t_36 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7774, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_83 = Py_TYPE(__pyx_t_8)->tp_iternext; index = 0; __pyx_t_36 = __pyx_t_83(__pyx_t_8); if (unlikely(!__pyx_t_36)) goto __pyx_L36_unpacking_failed; __Pyx_GOTREF(__pyx_t_36); index = 1; __pyx_t_7 = __pyx_t_83(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L36_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); if (__Pyx_IternextUnpackEndCheck(__pyx_t_83(__pyx_t_8), 2) < 0) __PYX_ERR(0, 7774, __pyx_L1_error) __pyx_t_83 = NULL; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L37_unpacking_done; __pyx_L36_unpacking_failed:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_83 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 7774, __pyx_L1_error) __pyx_L37_unpacking_done:; } if (!(likely(((__pyx_t_36) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_36, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7774, __pyx_L1_error) if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7774, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_36); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7774, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_36)); __pyx_t_36 = 0; __pyx_t_18 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7774, __pyx_L1_error) } __pyx_t_18 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+7775: w = 0
__pyx_v_w = 0;
+7776: count = 0
__pyx_v_count = 0;
+7777: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+7778: xt = xtrial[w]
__pyx_t_112 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+7779: yt = ytrial[w]
__pyx_t_113 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+7780: if I[xt, yt] == 0:
__pyx_t_114 = __pyx_v_xt;
__pyx_t_115 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_115, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7781: I[xt, yt] = p + count + 1
__pyx_t_116 = __pyx_v_xt;
__pyx_t_117 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_117, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+7782: X[p + count] = xt
__pyx_t_118 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+7783: Y[p + count] = yt
__pyx_t_119 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+7784: a[p + count] = 1
__pyx_t_120 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7785: MAJ[p + count] = 1
__pyx_t_121 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+7786: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_5 = __pyx_v_Adotfunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_8); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_int_1); __pyx_t_7 = 0; __pyx_t_36 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7786, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7786, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_122 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+7787: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], 0)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 7787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_123 = (__pyx_v_p + __pyx_v_count); __pyx_t_36 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_7 = __pyx_v_Rfunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_t_36); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_int_0); __pyx_t_5 = 0; __pyx_t_40 = 0; __pyx_t_8 = 0; __pyx_t_36 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7787, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 7787, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_124 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+7788: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_125 = (__pyx_v_p + __pyx_v_count);
__pyx_t_126 = 0;
__pyx_t_127 = __pyx_v_xt;
__pyx_t_128 = __pyx_v_yt;
__pyx_t_129 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_129, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_125, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_126, __pyx_pybuffernd_col.diminfo[1].strides));
+7789: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_130 = (__pyx_v_p + __pyx_v_count);
__pyx_t_131 = 1;
__pyx_t_132 = __pyx_v_xt;
__pyx_t_133 = __pyx_v_yt;
__pyx_t_134 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_134, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_131, __pyx_pybuffernd_col.diminfo[1].strides));
+7790: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_135 = (__pyx_v_p + __pyx_v_count);
__pyx_t_136 = 2;
__pyx_t_137 = __pyx_v_xt;
__pyx_t_138 = __pyx_v_yt;
__pyx_t_139 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_139, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_col.diminfo[1].strides));
+7791: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7792: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L41;
}
+7793: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
7794: else:
+7795: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_40 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_40 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_40)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_40);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_28 = 1;
}
}
__pyx_t_5 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
if (__pyx_t_40) {
__Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_40); __pyx_t_40 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_28, __pyx_t_7);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_36);
PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_28, __pyx_t_36);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_5, 5+__pyx_t_28, __pyx_t_8);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_5, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_7 = 0;
__pyx_t_36 = 0;
__pyx_t_8 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 7795, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_5 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_5);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7795, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_83 = Py_TYPE(__pyx_t_8)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_83(__pyx_t_8); if (unlikely(!__pyx_t_1)) goto __pyx_L42_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_5 = __pyx_t_83(__pyx_t_8); if (unlikely(!__pyx_t_5)) goto __pyx_L42_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_83(__pyx_t_8), 2) < 0) __PYX_ERR(0, 7795, __pyx_L1_error)
__pyx_t_83 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L43_unpacking_done;
__pyx_L42_unpacking_failed:;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_83 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 7795, __pyx_L1_error)
__pyx_L43_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7795, __pyx_L1_error)
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 7795, __pyx_L1_error)
__pyx_t_17 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7795, __pyx_L1_error)
}
__pyx_t_17 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_18 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 7795, __pyx_L1_error)
}
__pyx_t_18 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
+7796: w = 0
__pyx_v_w = 0;
}
__pyx_L41:;
}
+7797: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
7798:
7799:
7800:
+7801: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+7802: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
7803:
+7804: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+7805: for i in range(0, p):
__pyx_t_140 = __pyx_v_p;
for (__pyx_t_141 = 0; __pyx_t_141 < __pyx_t_140; __pyx_t_141+=1) {
__pyx_v_i = __pyx_t_141;
+7806: if a[i] == 1:
__pyx_t_142 = __pyx_v_i;
__pyx_t_25 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_25) {
/* … */
}
}
+7807: tmp = adotVal[i]
__pyx_t_143 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+7808: if tmp > adotValmax:
__pyx_t_25 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_25) {
/* … */
}
+7809: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
7810:
+7811: for k in range(0, p):
__pyx_t_140 = __pyx_v_p;
for (__pyx_t_141 = 0; __pyx_t_141 < __pyx_t_140; __pyx_t_141+=1) {
__pyx_v_k = __pyx_t_141;
+7812: if a[k] == 1:
__pyx_t_144 = __pyx_v_k;
__pyx_t_25 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_25) {
/* … */
}
}
+7813: a[k] = 0
__pyx_t_145 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+7814: xo = X[k]
__pyx_t_146 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_X.diminfo[0].strides));
+7815: yo = Y[k]
__pyx_t_147 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_Y.diminfo[0].strides));
+7816: Io = I[xo, yo]
__pyx_t_148 = __pyx_v_xo;
__pyx_t_149 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_149, __pyx_pybuffernd_I.diminfo[1].strides));
7817:
+7818: dr = adotVal[k] / adotValmax
__pyx_t_150 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+7819: MAJ[k] = MAJ[k] + dr
__pyx_t_151 = __pyx_v_k;
__pyx_t_152 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+7820: MIN = MAJ[k] / Rval[k]
__pyx_t_153 = __pyx_v_k;
__pyx_t_154 = __pyx_v_k;
__pyx_v_MIN = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_MAJ.diminfo[0].strides)) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_Rval.diminfo[0].strides)));
+7821: MAJceil = math.ceil(MAJ[k])
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7821, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ceil); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7821, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_155 = __pyx_v_k; __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_MAJ.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 7821, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_8) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7821, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_36 = PyTuple_New(1+1); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7821, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7821, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_156 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_156 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7821, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_MAJceil = __pyx_t_156;
+7822: MINceil = math.ceil(MIN)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7822, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ceil); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 7822, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_MIN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 7822, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); } } if (!__pyx_t_5) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_36, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7822, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 7822, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 7822, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_156 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_156 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 7822, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_MINceil = __pyx_t_156;
+7823: red = col[k, 0]
__pyx_t_156 = __pyx_v_k;
__pyx_t_157 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_157, __pyx_pybuffernd_col.diminfo[1].strides));
+7824: green = col[k, 1]
__pyx_t_158 = __pyx_v_k;
__pyx_t_159 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_159, __pyx_pybuffernd_col.diminfo[1].strides));
+7825: blue = col[k, 2]
__pyx_t_160 = __pyx_v_k;
__pyx_t_161 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_161, __pyx_pybuffernd_col.diminfo[1].strides));
7826:
+7827: imin, imax, jmin, jmax = xo, xo, yo, yo
__pyx_t_162 = __pyx_v_xo;
__pyx_t_163 = __pyx_v_xo;
__pyx_t_164 = __pyx_v_yo;
__pyx_t_165 = __pyx_v_yo;
__pyx_v_imin = __pyx_t_162;
__pyx_v_imax = __pyx_t_163;
__pyx_v_jmin = __pyx_t_164;
__pyx_v_jmax = __pyx_t_165;
7828:
+7829: for deli in range(0, MAJceil + 1):
__pyx_t_165 = (__pyx_v_MAJceil + 1);
for (__pyx_t_164 = 0; __pyx_t_164 < __pyx_t_165; __pyx_t_164+=1) {
__pyx_v_deli = __pyx_t_164;
+7830: for delj in range(0, MINceil + 1):
__pyx_t_163 = (__pyx_v_MINceil + 1);
for (__pyx_t_162 = 0; __pyx_t_162 < __pyx_t_163; __pyx_t_162+=1) {
__pyx_v_delj = __pyx_t_162;
+7831: if (deli / MAJ[k]) ** 2 + (delj / MIN) ** 2 <= 1:
__pyx_t_166 = __pyx_v_k;
__pyx_t_25 = (((pow((((__pyx_t_5numpy_float64_t)__pyx_v_deli) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_166, __pyx_pybuffernd_MAJ.diminfo[0].strides))), 2.0) + powf((((float)__pyx_v_delj) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_25) {
/* … */
}
}
}
+7832: for l1 in range(-1, 2, 2):
for (__pyx_t_167 = -1L; __pyx_t_167 < 2; __pyx_t_167+=2) {
__pyx_v_l1 = __pyx_t_167;
+7833: for l2 in range(-1, 2, 2):
for (__pyx_t_168 = -1L; __pyx_t_168 < 2; __pyx_t_168+=2) {
__pyx_v_l2 = __pyx_t_168;
+7834: i, j = xo + l1 * deli, yo + l2 * delj
__pyx_t_169 = (__pyx_v_xo + (__pyx_v_l1 * __pyx_v_deli));
__pyx_t_170 = (__pyx_v_yo + (__pyx_v_l2 * __pyx_v_delj));
__pyx_v_i = __pyx_t_169;
__pyx_v_j = __pyx_t_170;
+7835: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_27 = (0 <= __pyx_v_i);
if (__pyx_t_27) {
__pyx_t_27 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_171 = (__pyx_t_27 != 0);
if (__pyx_t_171) {
} else {
__pyx_t_25 = __pyx_t_171;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_171 = (0 <= __pyx_v_j);
if (__pyx_t_171) {
__pyx_t_171 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_27 = (__pyx_t_171 != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L61_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
}
}
+7836: if I[i, j] == 0:
__pyx_t_170 = __pyx_v_i;
__pyx_t_169 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7837: II[i, j] = Io
__pyx_t_172 = __pyx_v_i;
__pyx_t_173 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_172, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_173, __pyx_pybuffernd_II.diminfo[1].strides) = __pyx_v_Io;
+7838: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+7839: if i > imax:
__pyx_t_25 = ((__pyx_v_i > __pyx_v_imax) != 0);
if (__pyx_t_25) {
/* … */
}
+7840: imax = i
__pyx_v_imax = __pyx_v_i;
+7841: if i < imin:
__pyx_t_25 = ((__pyx_v_i < __pyx_v_imin) != 0);
if (__pyx_t_25) {
/* … */
}
+7842: imin = i
__pyx_v_imin = __pyx_v_i;
+7843: if j > jmax:
__pyx_t_25 = ((__pyx_v_j > __pyx_v_jmax) != 0);
if (__pyx_t_25) {
/* … */
}
+7844: jmax = j
__pyx_v_jmax = __pyx_v_j;
+7845: if j < jmin:
__pyx_t_25 = ((__pyx_v_j < __pyx_v_jmin) != 0);
if (__pyx_t_25) {
/* … */
}
+7846: jmin = j
__pyx_v_jmin = __pyx_v_j;
7847:
+7848: if count > 0:
__pyx_t_25 = ((__pyx_v_count > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7849: i = imin
__pyx_v_i = __pyx_v_imin;
+7850: go = 1
__pyx_v_go = 1;
+7851: found = 0
__pyx_v_found = 0;
+7852: while go is True:
while (1) {
__pyx_t_25 = ((__pyx_v_go == 1) != 0);
if (!__pyx_t_25) break;
+7853: for j in range(jmin, jmax + 1, 1):
__pyx_t_165 = (__pyx_v_jmax + 1);
for (__pyx_t_164 = __pyx_v_jmin; __pyx_t_164 < __pyx_t_165; __pyx_t_164+=1) {
__pyx_v_j = __pyx_t_164;
+7854: if II[i, j] == Io:
__pyx_t_163 = __pyx_v_i;
__pyx_t_162 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_163, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L72_break:;
+7855: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7856: if I[i - 1, j] == Io:
__pyx_t_167 = (__pyx_v_i - 1);
__pyx_t_168 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_167, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_168, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7857: io, jo = i, j
__pyx_t_174 = __pyx_v_i;
__pyx_t_175 = __pyx_v_j;
__pyx_v_io = __pyx_t_174;
__pyx_v_jo = __pyx_t_175;
+7858: go = 0
__pyx_v_go = 0;
+7859: found = 1
__pyx_v_found = 1;
+7860: break
goto __pyx_L72_break;
+7861: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7862: if I[i, j - 1] == Io:
__pyx_t_175 = __pyx_v_i;
__pyx_t_174 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7863: io, jo = i, j
__pyx_t_176 = __pyx_v_i;
__pyx_t_177 = __pyx_v_j;
__pyx_v_io = __pyx_t_176;
__pyx_v_jo = __pyx_t_177;
+7864: go = 0
__pyx_v_go = 0;
+7865: found = 1
__pyx_v_found = 1;
+7866: break
goto __pyx_L72_break;
7867:
+7868: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+7869: if I[i, j + 1] == Io:
__pyx_t_177 = __pyx_v_i;
__pyx_t_176 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7870: io, jo = i, j
__pyx_t_178 = __pyx_v_i;
__pyx_t_179 = __pyx_v_j;
__pyx_v_io = __pyx_t_178;
__pyx_v_jo = __pyx_t_179;
+7871: go = 0
__pyx_v_go = 0;
+7872: found = 1
__pyx_v_found = 1;
+7873: break
goto __pyx_L72_break;
7874:
7875:
+7876: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+7877: if I[i + 1, j] == Io:
__pyx_t_179 = (__pyx_v_i + 1);
__pyx_t_178 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7878: io, jo = i, j
__pyx_t_180 = __pyx_v_i;
__pyx_t_181 = __pyx_v_j;
__pyx_v_io = __pyx_t_180;
__pyx_v_jo = __pyx_t_181;
+7879: go = 0
__pyx_v_go = 0;
+7880: found = 1
__pyx_v_found = 1;
+7881: break
goto __pyx_L72_break;
+7882: i = i + 1
__pyx_v_i = (__pyx_v_i + 1);
+7883: if i == imax + 1:
__pyx_t_25 = ((__pyx_v_i == (__pyx_v_imax + 1)) != 0);
if (__pyx_t_25) {
/* … */
}
}
+7884: go = 0
__pyx_v_go = 0;
7885:
+7886: if found == 1:
__pyx_t_25 = ((__pyx_v_found == 1) != 0);
if (__pyx_t_25) {
/* … */
}
7887:
7888: # OUTWARD
+7889: for i in range(io, imax + 1):
__pyx_t_165 = (__pyx_v_imax + 1);
for (__pyx_t_164 = __pyx_v_io; __pyx_t_164 < __pyx_t_165; __pyx_t_164+=1) {
__pyx_v_i = __pyx_t_164;
+7890: for j in range(jo, jmax + 1):
__pyx_t_181 = (__pyx_v_jmax + 1);
for (__pyx_t_180 = __pyx_v_jo; __pyx_t_180 < __pyx_t_181; __pyx_t_180+=1) {
__pyx_v_j = __pyx_t_180;
+7891: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+7892: if II[i, j] == Io:
__pyx_t_183 = __pyx_v_i;
__pyx_t_184 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_183, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_184, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L89_break:;
}
+7893: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7894: if I[i - 1, j] == Io:
__pyx_t_185 = (__pyx_v_i - 1);
__pyx_t_186 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_186, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7895: I[i, j] = Io
__pyx_t_187 = __pyx_v_i;
__pyx_t_188 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_188, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7896: Col[i, j, 2] = red
__pyx_t_189 = __pyx_v_i;
__pyx_t_190 = __pyx_v_j;
__pyx_t_191 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_191, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7897: Col[i, j, 1] = green
__pyx_t_192 = __pyx_v_i;
__pyx_t_193 = __pyx_v_j;
__pyx_t_194 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_192, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_193, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_194, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7898: Col[i, j, 0] = blue
__pyx_t_195 = __pyx_v_i;
__pyx_t_196 = __pyx_v_j;
__pyx_t_197 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_196, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_197, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7899: a[k] = 1
__pyx_t_198 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7900: break
goto __pyx_L89_break;
+7901: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7902: if I[i, j - 1] == Io:
__pyx_t_199 = __pyx_v_i;
__pyx_t_200 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_199, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_200, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7903: I[i, j] = Io
__pyx_t_201 = __pyx_v_i;
__pyx_t_202 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7904: Col[i, j, 2] = red
__pyx_t_203 = __pyx_v_i;
__pyx_t_204 = __pyx_v_j;
__pyx_t_205 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7905: Col[i, j, 1] = green
__pyx_t_206 = __pyx_v_i;
__pyx_t_207 = __pyx_v_j;
__pyx_t_208 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_207, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_208, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7906: Col[i, j, 0] = blue
__pyx_t_209 = __pyx_v_i;
__pyx_t_210 = __pyx_v_j;
__pyx_t_211 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_210, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_211, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7907: a[k] = 1
__pyx_t_212 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7908: break
goto __pyx_L89_break;
7909:
+7910: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+7911: if I[i, j + 1] == Io:
__pyx_t_213 = __pyx_v_i;
__pyx_t_214 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_213, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_214, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7912: I[i, j] = Io
__pyx_t_215 = __pyx_v_i;
__pyx_t_216 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_216, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7913: Col[i, j, 2] = red
__pyx_t_217 = __pyx_v_i;
__pyx_t_218 = __pyx_v_j;
__pyx_t_219 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_219, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7914: Col[i, j, 1] = green
__pyx_t_220 = __pyx_v_i;
__pyx_t_221 = __pyx_v_j;
__pyx_t_222 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_220, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_221, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_222, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7915: Col[i, j, 0] = blue
__pyx_t_223 = __pyx_v_i;
__pyx_t_224 = __pyx_v_j;
__pyx_t_225 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_224, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7916: a[k] = 1
__pyx_t_226 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7917: break
goto __pyx_L89_break;
7918:
7919:
+7920: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+7921: if I[i + 1, j] == Io:
__pyx_t_227 = (__pyx_v_i + 1);
__pyx_t_228 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_227, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_228, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7922: I[i, j] = Io
__pyx_t_229 = __pyx_v_i;
__pyx_t_230 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_229, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_230, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7923: Col[i, j, 2] = red
__pyx_t_231 = __pyx_v_i;
__pyx_t_232 = __pyx_v_j;
__pyx_t_233 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7924: Col[i, j, 1] = green
__pyx_t_234 = __pyx_v_i;
__pyx_t_235 = __pyx_v_j;
__pyx_t_236 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_235, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_236, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7925: Col[i, j, 0] = blue
__pyx_t_237 = __pyx_v_i;
__pyx_t_238 = __pyx_v_j;
__pyx_t_239 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_238, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7926: a[k] = 1
__pyx_t_240 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7927: break
goto __pyx_L89_break;
7928:
+7929: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_181 = (__pyx_v_jmin - 1);
for (__pyx_t_180 = (__pyx_v_jo - 1); __pyx_t_180 > __pyx_t_181; __pyx_t_180-=1) {
__pyx_v_j = __pyx_t_180;
+7930: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+7931: if II[i, j] == Io:
__pyx_t_241 = __pyx_v_i;
__pyx_t_242 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_241, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_242, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L102_break:;
}
}
+7932: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7933: if I[i - 1, j] == Io:
__pyx_t_243 = (__pyx_v_i - 1);
__pyx_t_244 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_243, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_244, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7934: I[i, j] = Io
__pyx_t_245 = __pyx_v_i;
__pyx_t_246 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_246, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7935: Col[i, j, 2] = red
__pyx_t_247 = __pyx_v_i;
__pyx_t_248 = __pyx_v_j;
__pyx_t_249 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_248, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_249, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7936: Col[i, j, 1] = green
__pyx_t_250 = __pyx_v_i;
__pyx_t_251 = __pyx_v_j;
__pyx_t_252 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_250, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_251, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_252, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7937: Col[i, j, 0] = blue
__pyx_t_253 = __pyx_v_i;
__pyx_t_254 = __pyx_v_j;
__pyx_t_255 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_253, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7938: a[k] = 1
__pyx_t_256 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7939: break
goto __pyx_L102_break;
+7940: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7941: if I[i, j - 1] == Io:
__pyx_t_257 = __pyx_v_i;
__pyx_t_258 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_257, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_258, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7942: I[i, j] = Io
__pyx_t_259 = __pyx_v_i;
__pyx_t_260 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7943: Col[i, j, 2] = red
__pyx_t_261 = __pyx_v_i;
__pyx_t_262 = __pyx_v_j;
__pyx_t_263 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7944: Col[i, j, 1] = green
__pyx_t_264 = __pyx_v_i;
__pyx_t_265 = __pyx_v_j;
__pyx_t_266 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_265, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7945: Col[i, j, 0] = blue
__pyx_t_267 = __pyx_v_i;
__pyx_t_268 = __pyx_v_j;
__pyx_t_269 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7946: a[k] = 1
__pyx_t_270 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7947: break
goto __pyx_L102_break;
7948:
+7949: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+7950: if I[i, j + 1] == Io:
__pyx_t_271 = __pyx_v_i;
__pyx_t_272 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_271, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_272, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7951: I[i, j] = Io
__pyx_t_273 = __pyx_v_i;
__pyx_t_274 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_273, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_274, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7952: Col[i, j, 2] = red
__pyx_t_275 = __pyx_v_i;
__pyx_t_276 = __pyx_v_j;
__pyx_t_277 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7953: Col[i, j, 1] = green
__pyx_t_278 = __pyx_v_i;
__pyx_t_279 = __pyx_v_j;
__pyx_t_280 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_278, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_279, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_280, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7954: Col[i, j, 0] = blue
__pyx_t_281 = __pyx_v_i;
__pyx_t_282 = __pyx_v_j;
__pyx_t_283 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_281, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_282, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_283, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7955: a[k] = 1
__pyx_t_284 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7956: break
goto __pyx_L102_break;
7957:
7958:
+7959: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+7960: if I[i + 1, j] == Io:
__pyx_t_285 = (__pyx_v_i + 1);
__pyx_t_286 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_285, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_286, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7961: I[i, j] = Io
__pyx_t_287 = __pyx_v_i;
__pyx_t_288 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_287, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_288, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7962: Col[i, j, 2] = red
__pyx_t_289 = __pyx_v_i;
__pyx_t_290 = __pyx_v_j;
__pyx_t_291 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7963: Col[i, j, 1] = green
__pyx_t_292 = __pyx_v_i;
__pyx_t_293 = __pyx_v_j;
__pyx_t_294 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7964: Col[i, j, 0] = blue
__pyx_t_295 = __pyx_v_i;
__pyx_t_296 = __pyx_v_j;
__pyx_t_297 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7965: a[k] = 1
__pyx_t_298 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7966: break
goto __pyx_L102_break;
7967:
7968:
7969:
+7970: for i in range(io - 1, imin - 1, -1):
__pyx_t_165 = (__pyx_v_imin - 1);
for (__pyx_t_164 = (__pyx_v_io - 1); __pyx_t_164 > __pyx_t_165; __pyx_t_164-=1) {
__pyx_v_i = __pyx_t_164;
+7971: for j in range(jo, jmax + 1):
__pyx_t_181 = (__pyx_v_jmax + 1);
for (__pyx_t_180 = __pyx_v_jo; __pyx_t_180 < __pyx_t_181; __pyx_t_180+=1) {
__pyx_v_j = __pyx_t_180;
+7972: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+7973: if II[i, j] == Io:
__pyx_t_299 = __pyx_v_i;
__pyx_t_300 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_299, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_300, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L117_break:;
}
+7974: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7975: if I[i - 1, j] == Io:
__pyx_t_301 = (__pyx_v_i - 1);
__pyx_t_302 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_301, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_302, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7976: I[i, j] = Io
__pyx_t_303 = __pyx_v_i;
__pyx_t_304 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_303, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_304, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7977: Col[i, j, 2] = red
__pyx_t_305 = __pyx_v_i;
__pyx_t_306 = __pyx_v_j;
__pyx_t_307 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7978: Col[i, j, 1] = green
__pyx_t_308 = __pyx_v_i;
__pyx_t_309 = __pyx_v_j;
__pyx_t_310 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7979: Col[i, j, 0] = blue
__pyx_t_311 = __pyx_v_i;
__pyx_t_312 = __pyx_v_j;
__pyx_t_313 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_311, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7980: a[k] = 1
__pyx_t_314 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_314, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7981: break
goto __pyx_L117_break;
+7982: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+7983: if I[i, j - 1] == Io:
__pyx_t_315 = __pyx_v_i;
__pyx_t_316 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_315, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_316, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7984: I[i, j] = Io
__pyx_t_317 = __pyx_v_i;
__pyx_t_318 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_317, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_318, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7985: Col[i, j, 2] = red
__pyx_t_319 = __pyx_v_i;
__pyx_t_320 = __pyx_v_j;
__pyx_t_321 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7986: Col[i, j, 1] = green
__pyx_t_322 = __pyx_v_i;
__pyx_t_323 = __pyx_v_j;
__pyx_t_324 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7987: Col[i, j, 0] = blue
__pyx_t_325 = __pyx_v_i;
__pyx_t_326 = __pyx_v_j;
__pyx_t_327 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7988: a[k] = 1
__pyx_t_328 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_328, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7989: break
goto __pyx_L117_break;
7990:
+7991: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+7992: if I[i, j + 1] == Io:
__pyx_t_329 = __pyx_v_i;
__pyx_t_330 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_329, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_330, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+7993: I[i, j] = Io
__pyx_t_331 = __pyx_v_i;
__pyx_t_332 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_331, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_332, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+7994: Col[i, j, 2] = red
__pyx_t_333 = __pyx_v_i;
__pyx_t_334 = __pyx_v_j;
__pyx_t_335 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_333, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+7995: Col[i, j, 1] = green
__pyx_t_336 = __pyx_v_i;
__pyx_t_337 = __pyx_v_j;
__pyx_t_338 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+7996: Col[i, j, 0] = blue
__pyx_t_339 = __pyx_v_i;
__pyx_t_340 = __pyx_v_j;
__pyx_t_341 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_341, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+7997: a[k] = 1
__pyx_t_342 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+7998: break
goto __pyx_L117_break;
7999:
8000:
+8001: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8002: if I[i + 1, j] == Io:
__pyx_t_343 = (__pyx_v_i + 1);
__pyx_t_344 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_343, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_344, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8003: I[i, j] = Io
__pyx_t_345 = __pyx_v_i;
__pyx_t_346 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_345, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_346, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8004: Col[i, j, 2] = red
__pyx_t_347 = __pyx_v_i;
__pyx_t_348 = __pyx_v_j;
__pyx_t_349 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_347, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_348, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8005: Col[i, j, 1] = green
__pyx_t_350 = __pyx_v_i;
__pyx_t_351 = __pyx_v_j;
__pyx_t_352 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8006: Col[i, j, 0] = blue
__pyx_t_353 = __pyx_v_i;
__pyx_t_354 = __pyx_v_j;
__pyx_t_355 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_355, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8007: a[k] = 1
__pyx_t_356 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_356, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8008: break
goto __pyx_L117_break;
8009:
+8010: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_181 = (__pyx_v_jmin - 1);
for (__pyx_t_180 = (__pyx_v_jo - 1); __pyx_t_180 > __pyx_t_181; __pyx_t_180-=1) {
__pyx_v_j = __pyx_t_180;
+8011: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+8012: if II[i, j] == Io:
__pyx_t_357 = __pyx_v_i;
__pyx_t_358 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_357, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_358, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L130_break:;
}
}
+8013: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8014: if I[i - 1, j] == Io:
__pyx_t_359 = (__pyx_v_i - 1);
__pyx_t_360 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_359, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_360, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8015: I[i, j] = Io
__pyx_t_361 = __pyx_v_i;
__pyx_t_362 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_361, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_362, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8016: Col[i, j, 2] = red
__pyx_t_363 = __pyx_v_i;
__pyx_t_364 = __pyx_v_j;
__pyx_t_365 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_363, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8017: Col[i, j, 1] = green
__pyx_t_366 = __pyx_v_i;
__pyx_t_367 = __pyx_v_j;
__pyx_t_368 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8018: Col[i, j, 0] = blue
__pyx_t_369 = __pyx_v_i;
__pyx_t_370 = __pyx_v_j;
__pyx_t_371 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_369, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_370, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_371, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8019: a[k] = 1
__pyx_t_372 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_372, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8020: break
goto __pyx_L130_break;
+8021: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8022: if I[i, j - 1] == Io:
__pyx_t_373 = __pyx_v_i;
__pyx_t_374 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_373, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_374, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8023: I[i, j] = Io
__pyx_t_375 = __pyx_v_i;
__pyx_t_376 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_375, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_376, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8024: Col[i, j, 2] = red
__pyx_t_377 = __pyx_v_i;
__pyx_t_378 = __pyx_v_j;
__pyx_t_379 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_377, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8025: Col[i, j, 1] = green
__pyx_t_380 = __pyx_v_i;
__pyx_t_381 = __pyx_v_j;
__pyx_t_382 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8026: Col[i, j, 0] = blue
__pyx_t_383 = __pyx_v_i;
__pyx_t_384 = __pyx_v_j;
__pyx_t_385 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_383, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_385, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8027: a[k] = 1
__pyx_t_386 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_386, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8028: break
goto __pyx_L130_break;
8029:
+8030: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8031: if I[i, j + 1] == Io:
__pyx_t_387 = __pyx_v_i;
__pyx_t_388 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_387, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_388, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8032: I[i, j] = Io
__pyx_t_389 = __pyx_v_i;
__pyx_t_390 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_389, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_390, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8033: Col[i, j, 2] = red
__pyx_t_391 = __pyx_v_i;
__pyx_t_392 = __pyx_v_j;
__pyx_t_393 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_391, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8034: Col[i, j, 1] = green
__pyx_t_394 = __pyx_v_i;
__pyx_t_395 = __pyx_v_j;
__pyx_t_396 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8035: Col[i, j, 0] = blue
__pyx_t_397 = __pyx_v_i;
__pyx_t_398 = __pyx_v_j;
__pyx_t_399 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_397, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_398, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_399, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8036: a[k] = 1
__pyx_t_400 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_400, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8037: break
goto __pyx_L130_break;
8038:
8039:
+8040: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8041: if I[i + 1, j] == Io:
__pyx_t_401 = (__pyx_v_i + 1);
__pyx_t_402 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_401, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_402, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8042: I[i, j] = Io
__pyx_t_403 = __pyx_v_i;
__pyx_t_404 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_403, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_404, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8043: Col[i, j, 2] = red
__pyx_t_405 = __pyx_v_i;
__pyx_t_406 = __pyx_v_j;
__pyx_t_407 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_405, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_406, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_407, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8044: Col[i, j, 1] = green
__pyx_t_408 = __pyx_v_i;
__pyx_t_409 = __pyx_v_j;
__pyx_t_410 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_408, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_409, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_410, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8045: Col[i, j, 0] = blue
__pyx_t_411 = __pyx_v_i;
__pyx_t_412 = __pyx_v_j;
__pyx_t_413 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_411, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_412, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_413, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8046: a[k] = 1
__pyx_t_414 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_414, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8047: break
goto __pyx_L130_break;
8048:
8049:
8050:
8051: # INWARD
+8052: for i in range(imax, io - 1, -1):
__pyx_t_165 = (__pyx_v_io - 1);
for (__pyx_t_164 = __pyx_v_imax; __pyx_t_164 > __pyx_t_165; __pyx_t_164-=1) {
__pyx_v_i = __pyx_t_164;
+8053: for j in range(jo, jmax + 1):
__pyx_t_181 = (__pyx_v_jmax + 1);
for (__pyx_t_180 = __pyx_v_jo; __pyx_t_180 < __pyx_t_181; __pyx_t_180+=1) {
__pyx_v_j = __pyx_t_180;
+8054: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+8055: if II[i, j] == Io:
__pyx_t_415 = __pyx_v_i;
__pyx_t_416 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_415, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_416, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L145_break:;
}
+8056: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8057: if I[i - 1, j] == Io:
__pyx_t_417 = (__pyx_v_i - 1);
__pyx_t_418 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_417, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_418, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8058: I[i, j] = Io
__pyx_t_419 = __pyx_v_i;
__pyx_t_420 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_419, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_420, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8059: Col[i, j, 2] = red
__pyx_t_421 = __pyx_v_i;
__pyx_t_422 = __pyx_v_j;
__pyx_t_423 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_421, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_422, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8060: Col[i, j, 1] = green
__pyx_t_424 = __pyx_v_i;
__pyx_t_425 = __pyx_v_j;
__pyx_t_426 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_425, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_426, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8061: Col[i, j, 0] = blue
__pyx_t_427 = __pyx_v_i;
__pyx_t_428 = __pyx_v_j;
__pyx_t_429 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_427, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_428, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_429, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8062: a[k] = 1
__pyx_t_430 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_430, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8063: break
goto __pyx_L145_break;
+8064: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8065: if I[i, j - 1] == Io:
__pyx_t_431 = __pyx_v_i;
__pyx_t_432 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_431, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_432, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8066: I[i, j] = Io
__pyx_t_433 = __pyx_v_i;
__pyx_t_434 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_433, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_434, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8067: Col[i, j, 2] = red
__pyx_t_435 = __pyx_v_i;
__pyx_t_436 = __pyx_v_j;
__pyx_t_437 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_435, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_436, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8068: Col[i, j, 1] = green
__pyx_t_438 = __pyx_v_i;
__pyx_t_439 = __pyx_v_j;
__pyx_t_440 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_439, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_440, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8069: Col[i, j, 0] = blue
__pyx_t_441 = __pyx_v_i;
__pyx_t_442 = __pyx_v_j;
__pyx_t_443 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_443, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8070: a[k] = 1
__pyx_t_444 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_444, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8071: break
goto __pyx_L145_break;
8072:
+8073: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8074: if I[i, j + 1] == Io:
__pyx_t_445 = __pyx_v_i;
__pyx_t_446 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_445, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_446, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8075: I[i, j] = Io
__pyx_t_447 = __pyx_v_i;
__pyx_t_448 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_447, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_448, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8076: Col[i, j, 2] = red
__pyx_t_449 = __pyx_v_i;
__pyx_t_450 = __pyx_v_j;
__pyx_t_451 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_449, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_450, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_451, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8077: Col[i, j, 1] = green
__pyx_t_452 = __pyx_v_i;
__pyx_t_453 = __pyx_v_j;
__pyx_t_454 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_452, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_453, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_454, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8078: Col[i, j, 0] = blue
__pyx_t_455 = __pyx_v_i;
__pyx_t_456 = __pyx_v_j;
__pyx_t_457 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_457, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8079: a[k] = 1
__pyx_t_458 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_458, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8080: break
goto __pyx_L145_break;
8081:
8082:
+8083: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8084: if I[i + 1, j] == Io:
__pyx_t_459 = (__pyx_v_i + 1);
__pyx_t_460 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_459, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_460, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8085: I[i, j] = Io
__pyx_t_461 = __pyx_v_i;
__pyx_t_462 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_461, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_462, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8086: Col[i, j, 2] = red
__pyx_t_463 = __pyx_v_i;
__pyx_t_464 = __pyx_v_j;
__pyx_t_465 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_463, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_464, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_465, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8087: Col[i, j, 1] = green
__pyx_t_466 = __pyx_v_i;
__pyx_t_467 = __pyx_v_j;
__pyx_t_468 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_466, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_467, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_468, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8088: Col[i, j, 0] = blue
__pyx_t_469 = __pyx_v_i;
__pyx_t_470 = __pyx_v_j;
__pyx_t_471 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_469, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_470, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_471, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8089: a[k] = 1
__pyx_t_472 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_472, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8090: break
goto __pyx_L145_break;
8091:
+8092: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_181 = (__pyx_v_jmin - 1);
for (__pyx_t_180 = (__pyx_v_jo - 1); __pyx_t_180 > __pyx_t_181; __pyx_t_180-=1) {
__pyx_v_j = __pyx_t_180;
+8093: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+8094: if II[i, j] == Io:
__pyx_t_473 = __pyx_v_i;
__pyx_t_474 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_473, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_474, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L158_break:;
}
}
+8095: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8096: if I[i - 1, j] == Io:
__pyx_t_475 = (__pyx_v_i - 1);
__pyx_t_476 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_475, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_476, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8097: I[i, j] = Io
__pyx_t_477 = __pyx_v_i;
__pyx_t_478 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_477, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_478, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8098: Col[i, j, 2] = red
__pyx_t_479 = __pyx_v_i;
__pyx_t_480 = __pyx_v_j;
__pyx_t_481 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_479, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_480, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_481, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8099: Col[i, j, 1] = green
__pyx_t_482 = __pyx_v_i;
__pyx_t_483 = __pyx_v_j;
__pyx_t_484 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_482, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_483, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_484, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8100: Col[i, j, 0] = blue
__pyx_t_485 = __pyx_v_i;
__pyx_t_486 = __pyx_v_j;
__pyx_t_487 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_485, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_486, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_487, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8101: a[k] = 1
__pyx_t_488 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_488, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8102: break
goto __pyx_L158_break;
+8103: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8104: if I[i, j - 1] == Io:
__pyx_t_489 = __pyx_v_i;
__pyx_t_490 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_489, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_490, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8105: I[i, j] = Io
__pyx_t_491 = __pyx_v_i;
__pyx_t_492 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_491, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_492, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8106: Col[i, j, 2] = red
__pyx_t_493 = __pyx_v_i;
__pyx_t_494 = __pyx_v_j;
__pyx_t_495 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_493, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_494, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_495, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8107: Col[i, j, 1] = green
__pyx_t_496 = __pyx_v_i;
__pyx_t_497 = __pyx_v_j;
__pyx_t_498 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_496, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_497, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_498, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8108: Col[i, j, 0] = blue
__pyx_t_499 = __pyx_v_i;
__pyx_t_500 = __pyx_v_j;
__pyx_t_501 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_499, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_500, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_501, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8109: a[k] = 1
__pyx_t_502 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_502, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8110: break
goto __pyx_L158_break;
8111:
+8112: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8113: if I[i, j + 1] == Io:
__pyx_t_503 = __pyx_v_i;
__pyx_t_504 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_503, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_504, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8114: I[i, j] = Io
__pyx_t_505 = __pyx_v_i;
__pyx_t_506 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_505, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_506, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8115: Col[i, j, 2] = red
__pyx_t_507 = __pyx_v_i;
__pyx_t_508 = __pyx_v_j;
__pyx_t_509 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_507, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_508, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_509, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8116: Col[i, j, 1] = green
__pyx_t_510 = __pyx_v_i;
__pyx_t_511 = __pyx_v_j;
__pyx_t_512 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_510, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_511, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_512, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8117: Col[i, j, 0] = blue
__pyx_t_513 = __pyx_v_i;
__pyx_t_514 = __pyx_v_j;
__pyx_t_515 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_513, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_514, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_515, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8118: a[k] = 1
__pyx_t_516 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_516, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8119: break
goto __pyx_L158_break;
8120:
8121:
+8122: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8123: if I[i + 1, j] == Io:
__pyx_t_517 = (__pyx_v_i + 1);
__pyx_t_518 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_517, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_518, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8124: I[i, j] = Io
__pyx_t_519 = __pyx_v_i;
__pyx_t_520 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_519, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_520, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8125: Col[i, j, 2] = red
__pyx_t_521 = __pyx_v_i;
__pyx_t_522 = __pyx_v_j;
__pyx_t_523 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_521, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_522, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_523, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8126: Col[i, j, 1] = green
__pyx_t_524 = __pyx_v_i;
__pyx_t_525 = __pyx_v_j;
__pyx_t_526 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_524, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_525, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_526, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8127: Col[i, j, 0] = blue
__pyx_t_527 = __pyx_v_i;
__pyx_t_528 = __pyx_v_j;
__pyx_t_529 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_527, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_528, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_529, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8128: a[k] = 1
__pyx_t_530 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_530, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8129: break
goto __pyx_L158_break;
8130:
8131:
8132:
+8133: for i in range(imin, io, -1):
__pyx_t_165 = __pyx_v_io;
for (__pyx_t_164 = __pyx_v_imin; __pyx_t_164 > __pyx_t_165; __pyx_t_164-=1) {
__pyx_v_i = __pyx_t_164;
+8134: for j in range(jo, jmax + 1):
__pyx_t_181 = (__pyx_v_jmax + 1);
for (__pyx_t_180 = __pyx_v_jo; __pyx_t_180 < __pyx_t_181; __pyx_t_180+=1) {
__pyx_v_j = __pyx_t_180;
+8135: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+8136: if II[i, j] == Io:
__pyx_t_531 = __pyx_v_i;
__pyx_t_532 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_531, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_532, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L173_break:;
}
+8137: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8138: if I[i - 1, j] == Io:
__pyx_t_533 = (__pyx_v_i - 1);
__pyx_t_534 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_533, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_534, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8139: I[i, j] = Io
__pyx_t_535 = __pyx_v_i;
__pyx_t_536 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_535, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_536, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8140: Col[i, j, 2] = red
__pyx_t_537 = __pyx_v_i;
__pyx_t_538 = __pyx_v_j;
__pyx_t_539 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_537, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_538, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_539, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8141: Col[i, j, 1] = green
__pyx_t_540 = __pyx_v_i;
__pyx_t_541 = __pyx_v_j;
__pyx_t_542 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_540, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_541, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_542, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8142: Col[i, j, 0] = blue
__pyx_t_543 = __pyx_v_i;
__pyx_t_544 = __pyx_v_j;
__pyx_t_545 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_543, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_544, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_545, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8143: a[k] = 1
__pyx_t_546 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_546, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8144: break
goto __pyx_L173_break;
+8145: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8146: if I[i, j - 1] == Io:
__pyx_t_547 = __pyx_v_i;
__pyx_t_548 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_547, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_548, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8147: I[i, j] = Io
__pyx_t_549 = __pyx_v_i;
__pyx_t_550 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_549, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_550, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8148: Col[i, j, 2] = red
__pyx_t_551 = __pyx_v_i;
__pyx_t_552 = __pyx_v_j;
__pyx_t_553 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_551, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_552, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_553, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8149: Col[i, j, 1] = green
__pyx_t_554 = __pyx_v_i;
__pyx_t_555 = __pyx_v_j;
__pyx_t_556 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_554, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_555, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_556, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8150: Col[i, j, 0] = blue
__pyx_t_557 = __pyx_v_i;
__pyx_t_558 = __pyx_v_j;
__pyx_t_559 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_557, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_558, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_559, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8151: a[k] = 1
__pyx_t_560 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_560, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8152: break
goto __pyx_L173_break;
8153:
+8154: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8155: if I[i, j + 1] == Io:
__pyx_t_561 = __pyx_v_i;
__pyx_t_562 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_561, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_562, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8156: I[i, j] = Io
__pyx_t_563 = __pyx_v_i;
__pyx_t_564 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_563, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_564, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8157: Col[i, j, 2] = red
__pyx_t_565 = __pyx_v_i;
__pyx_t_566 = __pyx_v_j;
__pyx_t_567 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_565, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_566, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_567, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8158: Col[i, j, 1] = green
__pyx_t_568 = __pyx_v_i;
__pyx_t_569 = __pyx_v_j;
__pyx_t_570 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_568, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_569, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_570, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8159: Col[i, j, 0] = blue
__pyx_t_571 = __pyx_v_i;
__pyx_t_572 = __pyx_v_j;
__pyx_t_573 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_571, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_572, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_573, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8160: a[k] = 1
__pyx_t_574 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_574, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8161: break
goto __pyx_L173_break;
8162:
8163:
+8164: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8165: if I[i + 1, j] == Io:
__pyx_t_575 = (__pyx_v_i + 1);
__pyx_t_576 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_575, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_576, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8166: I[i, j] = Io
__pyx_t_577 = __pyx_v_i;
__pyx_t_578 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_577, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_578, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8167: Col[i, j, 2] = red
__pyx_t_579 = __pyx_v_i;
__pyx_t_580 = __pyx_v_j;
__pyx_t_581 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_579, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_580, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_581, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8168: Col[i, j, 1] = green
__pyx_t_582 = __pyx_v_i;
__pyx_t_583 = __pyx_v_j;
__pyx_t_584 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_582, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_583, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_584, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8169: Col[i, j, 0] = blue
__pyx_t_585 = __pyx_v_i;
__pyx_t_586 = __pyx_v_j;
__pyx_t_587 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_585, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_586, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_587, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8170: a[k] = 1
__pyx_t_588 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_588, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8171: break
goto __pyx_L173_break;
8172:
+8173: for j in range(jo - 1, jmin - 1, -1):
__pyx_t_181 = (__pyx_v_jmin - 1);
for (__pyx_t_180 = (__pyx_v_jo - 1); __pyx_t_180 > __pyx_t_181; __pyx_t_180-=1) {
__pyx_v_j = __pyx_t_180;
+8174: for dum in range(1):
for (__pyx_t_182 = 0; __pyx_t_182 < 1; __pyx_t_182+=1) {
__pyx_v_dum = __pyx_t_182;
+8175: if II[i, j] == Io:
__pyx_t_589 = __pyx_v_i;
__pyx_t_590 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_II.rcbuffer->pybuffer.buf, __pyx_t_589, __pyx_pybuffernd_II.diminfo[0].strides, __pyx_t_590, __pyx_pybuffernd_II.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L186_break:;
}
}
+8176: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8177: if I[i - 1, j] == Io:
__pyx_t_591 = (__pyx_v_i - 1);
__pyx_t_592 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_591, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_592, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8178: I[i, j] = Io
__pyx_t_593 = __pyx_v_i;
__pyx_t_594 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_593, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_594, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8179: Col[i, j, 2] = red
__pyx_t_595 = __pyx_v_i;
__pyx_t_596 = __pyx_v_j;
__pyx_t_597 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_595, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_596, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_597, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8180: Col[i, j, 1] = green
__pyx_t_598 = __pyx_v_i;
__pyx_t_599 = __pyx_v_j;
__pyx_t_600 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_598, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_599, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_600, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8181: Col[i, j, 0] = blue
__pyx_t_601 = __pyx_v_i;
__pyx_t_602 = __pyx_v_j;
__pyx_t_603 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_601, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_602, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_603, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8182: a[k] = 1
__pyx_t_604 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_604, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8183: break
goto __pyx_L186_break;
+8184: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8185: if I[i, j - 1] == Io:
__pyx_t_605 = __pyx_v_i;
__pyx_t_606 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_605, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_606, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8186: I[i, j] = Io
__pyx_t_607 = __pyx_v_i;
__pyx_t_608 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_607, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_608, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8187: Col[i, j, 2] = red
__pyx_t_609 = __pyx_v_i;
__pyx_t_610 = __pyx_v_j;
__pyx_t_611 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_609, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_610, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_611, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8188: Col[i, j, 1] = green
__pyx_t_612 = __pyx_v_i;
__pyx_t_613 = __pyx_v_j;
__pyx_t_614 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_612, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_613, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_614, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8189: Col[i, j, 0] = blue
__pyx_t_615 = __pyx_v_i;
__pyx_t_616 = __pyx_v_j;
__pyx_t_617 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_615, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_616, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_617, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8190: a[k] = 1
__pyx_t_618 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_618, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8191: break
goto __pyx_L186_break;
8192:
+8193: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8194: if I[i, j + 1] == Io:
__pyx_t_619 = __pyx_v_i;
__pyx_t_620 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_619, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_620, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8195: I[i, j] = Io
__pyx_t_621 = __pyx_v_i;
__pyx_t_622 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_621, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_622, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8196: Col[i, j, 2] = red
__pyx_t_623 = __pyx_v_i;
__pyx_t_624 = __pyx_v_j;
__pyx_t_625 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_623, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_624, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_625, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8197: Col[i, j, 1] = green
__pyx_t_626 = __pyx_v_i;
__pyx_t_627 = __pyx_v_j;
__pyx_t_628 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_626, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_627, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_628, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8198: Col[i, j, 0] = blue
__pyx_t_629 = __pyx_v_i;
__pyx_t_630 = __pyx_v_j;
__pyx_t_631 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_629, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_630, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_631, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8199: a[k] = 1
__pyx_t_632 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_632, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8200: break
goto __pyx_L186_break;
8201:
8202:
+8203: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+8204: if I[i + 1, j] == Io:
__pyx_t_633 = (__pyx_v_i + 1);
__pyx_t_634 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_633, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_634, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8205: I[i, j] = Io
__pyx_t_635 = __pyx_v_i;
__pyx_t_636 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_635, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_636, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8206: Col[i, j, 2] = red
__pyx_t_637 = __pyx_v_i;
__pyx_t_638 = __pyx_v_j;
__pyx_t_639 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_637, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_638, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_639, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8207: Col[i, j, 1] = green
__pyx_t_640 = __pyx_v_i;
__pyx_t_641 = __pyx_v_j;
__pyx_t_642 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_640, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_641, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_642, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8208: Col[i, j, 0] = blue
__pyx_t_643 = __pyx_v_i;
__pyx_t_644 = __pyx_v_j;
__pyx_t_645 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_643, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_644, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_645, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8209: a[k] = 1
__pyx_t_646 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_646, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8210: break
goto __pyx_L186_break;
8211:
+8212: if a[k] == 0:
__pyx_t_165 = __pyx_v_k;
__pyx_t_25 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8213: xmin = max(0, xo - MAJceil)
__pyx_t_164 = (__pyx_v_xo - __pyx_v_MAJceil);
__pyx_t_647 = 0;
if (((__pyx_t_164 > __pyx_t_647) != 0)) {
__pyx_t_181 = __pyx_t_164;
} else {
__pyx_t_181 = __pyx_t_647;
}
__pyx_v_xmin = __pyx_t_181;
+8214: xmax = min(m - 1, xo + MAJceil)
__pyx_t_181 = (__pyx_v_xo + __pyx_v_MAJceil);
__pyx_t_164 = (__pyx_v_m - 1);
if (((__pyx_t_181 < __pyx_t_164) != 0)) {
__pyx_t_180 = __pyx_t_181;
} else {
__pyx_t_180 = __pyx_t_164;
}
__pyx_v_xmax = __pyx_t_180;
+8215: ymin = max(0, yo - MINceil)
__pyx_t_180 = (__pyx_v_yo - __pyx_v_MINceil);
__pyx_t_647 = 0;
if (((__pyx_t_180 > __pyx_t_647) != 0)) {
__pyx_t_181 = __pyx_t_180;
} else {
__pyx_t_181 = __pyx_t_647;
}
__pyx_v_ymin = __pyx_t_181;
+8216: ymax = min(n - 1, yo + MINceil)
__pyx_t_181 = (__pyx_v_yo + __pyx_v_MINceil);
__pyx_t_180 = (__pyx_v_n - 1);
if (((__pyx_t_181 < __pyx_t_180) != 0)) {
__pyx_t_164 = __pyx_t_181;
} else {
__pyx_t_164 = __pyx_t_180;
}
__pyx_v_ymax = __pyx_t_164;
+8217: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_164 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
8218:
8219:
8220:
8221:
+8222: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+8223: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
+8224: nnz = cv2.countNonZero(I)
__pyx_t_36 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_36, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_36) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_8, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_36); __pyx_t_36 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8224, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_140 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_140 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8224, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_nnz = __pyx_t_140; }
8225:
8226:
8227:
+8228: obj.p = p
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8228, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_6) < 0) __PYX_ERR(0, 8228, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+8229: toc = time.time()
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (__pyx_t_8) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8229, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } else { __pyx_t_6 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8229, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_24 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_24 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 8229, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_toc = __pyx_t_24;
+8230: obj.exetime = toc - tic
__pyx_t_6 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8230, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_6) < 0) __PYX_ERR(0, 8230, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+8231: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_delete); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_36 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_36, __pyx_n_s_arange); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_7); __pyx_t_36 = 0; __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_26, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_6) < 0) __PYX_ERR(0, 8231, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+8232: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_delete); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_arange); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_7); __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_40, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_26))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_6) < 0) __PYX_ERR(0, 8232, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
+8233: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 8233, __pyx_L1_error)
+8234: obj.adotVal = adotVal
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_adotVal, ((PyObject *)__pyx_v_adotVal)) < 0) __PYX_ERR(0, 8234, __pyx_L1_error)
+8235: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 8235, __pyx_L1_error)
+8236: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
8237:
+8238: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_57Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_57Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_57Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_57Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_56Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_56Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_MN;
float __pyx_v_R;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_seq;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_tmp;
float __pyx_v_Min;
float __pyx_v_Maj;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_dr;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
double __pyx_v_adotValmax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot", 0);
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_25);
__Pyx_XDECREF(__pyx_t_35);
__Pyx_XDECREF(__pyx_t_39);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__67 = PyTuple_Pack(73, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_fstop, __pyx_n_s_MN, __pyx_n_s_R, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_Thetafunc, __pyx_n_s_Adotfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_tmp, __pyx_n_s_Min, __pyx_n_s_Maj, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_dr, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_MAJ, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_adotVal, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_adotValmax); if (unlikely(!__pyx_tuple__67)) __PYX_ERR(0, 8238, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__67);
__Pyx_GIVEREF(__pyx_tuple__67);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_57Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_without_aspect_with_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8238, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_11, __pyx_t_2) < 0) __PYX_ERR(0, 8238, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__68 = (PyObject*)__Pyx_PyCode_New(1, 0, 73, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__67, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_11, 8238, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__68)) __PYX_ERR(0, 8238, __pyx_L1_error)
8239: # Grabbing data from the input object
+8240: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8240, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8240, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+8241: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8241, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8241, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+8242: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8242, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8242, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+8243: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8243, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8243, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+8244: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8244, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8244, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+8245: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+8246: cdef float R = obj.R
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_R); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8246, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8246, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_R = __pyx_t_3;
+8247: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8247, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+8248: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8248, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 8248, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+8249: cdef long long seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8249, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8249, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_2;
+8250: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8250, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+8251: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8251, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+8252: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+8253: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8253, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+8254: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+8255: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8255, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
+8256: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
8257:
8258: # Declaring other variables
8259: cdef double tic, toc
8260: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, delX, delY, xmin, xmax, ymin, ymax, dum, Iter
8261: cdef float dt, f, t, tmp, Min, Maj, theta, c, s, dr, red, green, blue
+8262: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8262, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8262, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8262, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_9 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+8263: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8263, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8263, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+8264: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8264, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8264, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8264, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+8265: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8265, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8265, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_12 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+8266: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8266, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8266, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8266, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+8267: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8267, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8267, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+8268: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8268, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8268, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+8269: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(MN, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8269, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8269, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+8270: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8270, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8270, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8270, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+8271: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8271, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8271, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_18 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+8272: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8272, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8272, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8272, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_19 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+8273: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8273, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8273, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+8274: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8274, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8274, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8274, __pyx_L1_error) } __pyx_t_19 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_5)); __pyx_t_5 = 0;
+8275: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_6) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8275, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 8275, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_tic = __pyx_t_23;
8276:
8277:
+8278: t = 0
__pyx_v_t = 0.0;
+8279: p = 0
__pyx_v_p = 0;
+8280: dp = 0
__pyx_v_dp = 0;
+8281: countim = 0
__pyx_v_countim = 0;
+8282: nnz = 0
__pyx_v_nnz = 0;
+8283: Iter = 1
__pyx_v_Iter = 1;
+8284: while nnz < MN:
while (1) {
__pyx_t_24 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_24) break;
+8285: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+8286: dt = 1.0 / Gt(t)
__pyx_t_8 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8286, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_5, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8286, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8286, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+8287: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_8 = __pyx_v_Ndot; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_25 = PyTuple_New(1+1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyNumber_Multiply(__pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyNumber_Multiply(__pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8287, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_dp = __pyx_t_2;
+8288: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+8289: if pdelNxy == []:
__pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8289, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8289, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_24 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_24 < 0)) __PYX_ERR(0, 8289, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_24) { /* … */ goto __pyx_L5; }
+8290: if seq == 4 or seq == 5 or seq == 6:
switch (__pyx_v_seq) {
case 4:
case 5:
case 6:
/* … */
break;
default:
+8291: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L7_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+8292: count = 0
__pyx_v_count = 0;
+8293: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+8294: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8294, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8294, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+8295: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_25, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8295, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8295, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+8296: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_28 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_28, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+8297: I[xt, yt] = p + count + 1
__pyx_t_29 = __pyx_v_xt;
__pyx_t_30 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_30, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8298: X[p + count] = xt
__pyx_t_31 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8299: Y[p + count] = yt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8300: a[p + count] = 1
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8301: MAJ[p + count] = 1
__pyx_t_34 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8302: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_8 = __pyx_v_Adotfunc; __pyx_t_7 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_35 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_35, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_35, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_35, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_35, 3+__pyx_t_27, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_35, 4+__pyx_t_27, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_35, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8302, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8302, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_37 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_37, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_36;
+8303: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, adotVal[p + count])
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8303, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8303, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8303, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_38 = (__pyx_v_p + __pyx_v_count); __pyx_t_25 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8303, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_5 = __pyx_v_Thetafunc; __pyx_t_7 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_39 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8303, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_39, 1+__pyx_t_27, __pyx_t_35); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_39, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 3+__pyx_t_27, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_39, 4+__pyx_t_27, __pyx_t_25); __pyx_t_8 = 0; __pyx_t_35 = 0; __pyx_t_1 = 0; __pyx_t_25 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8303, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8303, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_40 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+8304: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_41 = (__pyx_v_p + __pyx_v_count);
__pyx_t_42 = 0;
__pyx_t_43 = __pyx_v_xt;
__pyx_t_44 = __pyx_v_yt;
__pyx_t_45 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_44, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_45, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_42, __pyx_pybuffernd_col.diminfo[1].strides));
+8305: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_46 = (__pyx_v_p + __pyx_v_count);
__pyx_t_47 = 1;
__pyx_t_48 = __pyx_v_xt;
__pyx_t_49 = __pyx_v_yt;
__pyx_t_50 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_47, __pyx_pybuffernd_col.diminfo[1].strides));
+8306: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_51 = (__pyx_v_p + __pyx_v_count);
__pyx_t_52 = 2;
__pyx_t_53 = __pyx_v_xt;
__pyx_t_54 = __pyx_v_yt;
__pyx_t_55 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_col.diminfo[1].strides));
+8307: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8308: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8309: else:
+8310: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L14_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
break;
}
+8311: count = 0
__pyx_v_count = 0;
+8312: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+8313: xt = np.random.randint(0, m - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_39 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_t_39); __pyx_t_39 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8313, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_56 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_56 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8313, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_56;
+8314: yt = np.random.randint(0, n - 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_39 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_39) { __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_39); __pyx_t_39 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_25, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8314, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_56 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_56 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8314, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_56;
+8315: if I[xt, yt] == 0:
__pyx_t_56 = __pyx_v_xt;
__pyx_t_57 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_57, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
}
+8316: I[xt, yt] = p + count + 1
__pyx_t_58 = __pyx_v_xt;
__pyx_t_59 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_59, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8317: X[p + count] = xt
__pyx_t_60 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_60, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8318: Y[p + count] = yt
__pyx_t_61 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8319: a[p + count] = 1
__pyx_t_62 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8320: MAJ[p + count] = 1
__pyx_t_63 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8321: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_39 = __pyx_v_Thetafunc; __pyx_t_35 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_39))) { __pyx_t_35 = PyMethod_GET_SELF(__pyx_t_39); if (likely(__pyx_t_35)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_39); __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_39, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_35) { __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_35); __pyx_t_35 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_27, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_27, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_39, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8321, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8321, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_64 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_64, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+8322: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], 1)
__pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_65 = (__pyx_v_p + __pyx_v_count); __pyx_t_25 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_5 = __pyx_v_Adotfunc; __pyx_t_35 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_35 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_35)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_27 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_35) { __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_35); __pyx_t_35 = NULL; } __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_27, __pyx_int_1); __pyx_t_39 = 0; __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_25 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8322, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8322, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_66 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_36;
+8323: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_67 = (__pyx_v_p + __pyx_v_count);
__pyx_t_68 = 0;
__pyx_t_69 = __pyx_v_xt;
__pyx_t_70 = __pyx_v_yt;
__pyx_t_71 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_70, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_71, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_col.diminfo[1].strides));
+8324: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_72 = (__pyx_v_p + __pyx_v_count);
__pyx_t_73 = 1;
__pyx_t_74 = __pyx_v_xt;
__pyx_t_75 = __pyx_v_yt;
__pyx_t_76 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_75, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_76, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_73, __pyx_pybuffernd_col.diminfo[1].strides));
+8325: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_77 = (__pyx_v_p + __pyx_v_count);
__pyx_t_78 = 2;
__pyx_t_79 = __pyx_v_xt;
__pyx_t_80 = __pyx_v_yt;
__pyx_t_81 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_80, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_81, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_78, __pyx_pybuffernd_col.diminfo[1].strides));
+8326: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8327: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8328: else:
+8329: if seq == 4 or seq == 5 or seq == 6:
/*else*/ {
switch (__pyx_v_seq) {
case 4:
case 5:
case 6:
/* … */
break;
default:
+8330: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L21_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+8331: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_27 = 1; } } __pyx_t_39 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_39, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_39, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_39, 2+__pyx_t_27, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_39, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_39, 4+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_39, 5+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 6+__pyx_t_27, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8331, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_39 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_39 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_39); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_39 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8331, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_82 = Py_TYPE(__pyx_t_1)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L24_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_39 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_39)) goto __pyx_L24_unpacking_failed; __Pyx_GOTREF(__pyx_t_39); if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_1), 2) < 0) __PYX_ERR(0, 8331, __pyx_L1_error) __pyx_t_82 = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; goto __pyx_L25_unpacking_done; __pyx_L24_unpacking_failed:; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_82 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8331, __pyx_L1_error) __pyx_L25_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8331, __pyx_L1_error) if (!(likely(((__pyx_t_39) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_39, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8331, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8331, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_39); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8331, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_39)); __pyx_t_39 = 0;
+8332: w = 0
__pyx_v_w = 0;
+8333: count = 0
__pyx_v_count = 0;
+8334: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+8335: xt = xtrial[w]
__pyx_t_83 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8336: yt = ytrial[w]
__pyx_t_84 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8337: if I[xt, yt] == 0:
__pyx_t_85 = __pyx_v_xt;
__pyx_t_86 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8338: I[xt, yt] = p + count + 1
__pyx_t_87 = __pyx_v_xt;
__pyx_t_88 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_88, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8339: X[p + count] = xt
__pyx_t_89 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8340: Y[p + count] = yt
__pyx_t_90 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8341: a[p + count] = 1
__pyx_t_91 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_91, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8342: MAJ[p + count] = 1
__pyx_t_92 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8343: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_25 = __pyx_v_Adotfunc; __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_25))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_27, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_27, __pyx_int_1); __pyx_t_39 = 0; __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8343, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8343, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_93 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_36;
+8344: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, adotVal[p + count])
__pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_94 = (__pyx_v_p + __pyx_v_count); __pyx_t_7 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_39 = __pyx_v_Thetafunc; __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_39))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_39); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_39); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_39, function); __pyx_t_27 = 1; } } __pyx_t_35 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_35, 0+__pyx_t_27, __pyx_t_25); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_35, 1+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_35, 2+__pyx_t_27, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_35, 3+__pyx_t_27, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_35, 4+__pyx_t_27, __pyx_t_7); __pyx_t_25 = 0; __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_39, __pyx_t_35, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8344, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8344, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_95 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+8345: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_96 = (__pyx_v_p + __pyx_v_count);
__pyx_t_97 = 0;
__pyx_t_98 = __pyx_v_xt;
__pyx_t_99 = __pyx_v_yt;
__pyx_t_100 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_97, __pyx_pybuffernd_col.diminfo[1].strides));
+8346: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_101 = (__pyx_v_p + __pyx_v_count);
__pyx_t_102 = 1;
__pyx_t_103 = __pyx_v_xt;
__pyx_t_104 = __pyx_v_yt;
__pyx_t_105 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_105, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_102, __pyx_pybuffernd_col.diminfo[1].strides));
+8347: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_106 = (__pyx_v_p + __pyx_v_count);
__pyx_t_107 = 2;
__pyx_t_108 = __pyx_v_xt;
__pyx_t_109 = __pyx_v_yt;
__pyx_t_110 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_109, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_110, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_col.diminfo[1].strides));
+8348: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8349: if w < dp - 1:
__pyx_t_24 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L29;
}
+8350: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8351: else:
+8352: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_39 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_39);
__pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0;
__pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_39);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_8 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_35);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_35, function);
__pyx_t_27 = 1;
}
}
__pyx_t_25 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
if (__pyx_t_8) {
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_8); __pyx_t_8 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_39);
PyTuple_SET_ITEM(__pyx_t_25, 2+__pyx_t_27, __pyx_t_39);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_25, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_25, 4+__pyx_t_27, __pyx_t_7);
__Pyx_GIVEREF(__pyx_t_1);
PyTuple_SET_ITEM(__pyx_t_25, 5+__pyx_t_27, __pyx_t_1);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_25, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_39 = 0;
__pyx_t_7 = 0;
__pyx_t_1 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_25, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0;
__Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8352, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_35 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_25 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_35 = PyList_GET_ITEM(sequence, 0);
__pyx_t_25 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_35);
__Pyx_INCREF(__pyx_t_25);
#else
__pyx_t_35 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__pyx_t_25 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_25);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8352, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_82 = Py_TYPE(__pyx_t_1)->tp_iternext;
index = 0; __pyx_t_35 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_35)) goto __pyx_L30_unpacking_failed;
__Pyx_GOTREF(__pyx_t_35);
index = 1; __pyx_t_25 = __pyx_t_82(__pyx_t_1); if (unlikely(!__pyx_t_25)) goto __pyx_L30_unpacking_failed;
__Pyx_GOTREF(__pyx_t_25);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_1), 2) < 0) __PYX_ERR(0, 8352, __pyx_L1_error)
__pyx_t_82 = NULL;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
goto __pyx_L31_unpacking_done;
__pyx_L30_unpacking_failed:;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_82 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8352, __pyx_L1_error)
__pyx_L31_unpacking_done:;
}
if (!(likely(((__pyx_t_35) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_35, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8352, __pyx_L1_error)
if (!(likely(((__pyx_t_25) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_25, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8352, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_35);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8352, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_35));
__pyx_t_35 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_25);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8352, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_25));
__pyx_t_25 = 0;
+8353: w = 0
__pyx_v_w = 0;
}
__pyx_L29:;
}
+8354: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8355: else:
+8356: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_26 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L33_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_26) {
} else {
__pyx_t_24 = __pyx_t_26;
goto __pyx_L33_bool_binop_done;
}
__pyx_t_26 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L33_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
break;
}
}
__pyx_L5:;
+8357: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_25 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_25, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __pyx_t_25 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_39 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_35); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_35, function); __pyx_t_27 = 1; } } __pyx_t_8 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_39) { __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_39); __pyx_t_39 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_27, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_27, __pyx_t_25); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_27, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 5+__pyx_t_27, __pyx_t_7); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 6+__pyx_t_27, __pyx_int_1); __pyx_t_25 = 0; __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8357, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_35 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_8 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_35 = PyList_GET_ITEM(sequence, 0); __pyx_t_8 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_35); __Pyx_INCREF(__pyx_t_8); #else __pyx_t_35 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8357, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_82 = Py_TYPE(__pyx_t_7)->tp_iternext; index = 0; __pyx_t_35 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_35)) goto __pyx_L36_unpacking_failed; __Pyx_GOTREF(__pyx_t_35); index = 1; __pyx_t_8 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_8)) goto __pyx_L36_unpacking_failed; __Pyx_GOTREF(__pyx_t_8); if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_7), 2) < 0) __PYX_ERR(0, 8357, __pyx_L1_error) __pyx_t_82 = NULL; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; goto __pyx_L37_unpacking_done; __pyx_L36_unpacking_failed:; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_82 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8357, __pyx_L1_error) __pyx_L37_unpacking_done:; } if (!(likely(((__pyx_t_35) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_35, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8357, __pyx_L1_error) if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8357, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_35); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8357, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_35)); __pyx_t_35 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8357, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_8)); __pyx_t_8 = 0;
+8358: w = 0
__pyx_v_w = 0;
+8359: count = 0
__pyx_v_count = 0;
+8360: while count < dp:
while (1) {
__pyx_t_24 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_24) break;
+8361: xt = xtrial[w]
__pyx_t_111 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8362: yt = ytrial[w]
__pyx_t_112 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8363: if I[xt, yt] == 0:
__pyx_t_113 = __pyx_v_xt;
__pyx_t_114 = __pyx_v_yt;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_113, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_114, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8364: I[xt, yt] = p + count + 1
__pyx_t_115 = __pyx_v_xt;
__pyx_t_116 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_115, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_116, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8365: X[p + count] = xt
__pyx_t_117 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_117, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8366: Y[p + count] = yt
__pyx_t_118 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_118, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8367: a[p + count] = 1
__pyx_t_119 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8368: MAJ[p + count] = 1
__pyx_t_120 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8369: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_1 = __pyx_v_Thetafunc; __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_27 = 1; } } __pyx_t_39 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0+__pyx_t_27, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_39, 1+__pyx_t_27, __pyx_t_35); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_39, 2+__pyx_t_27, __pyx_t_7); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 3+__pyx_t_27, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_39, 4+__pyx_t_27, __pyx_int_1); __pyx_t_8 = 0; __pyx_t_35 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8369, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8369, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_121 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_36;
+8370: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], 1)
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_122 = (__pyx_v_p + __pyx_v_count); __pyx_t_35 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_122, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_8 = __pyx_v_Adotfunc; __pyx_t_25 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_25 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_25)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_25); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(5+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_25) { __Pyx_GIVEREF(__pyx_t_25); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_25); __pyx_t_25 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_35); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_27, __pyx_t_35); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_27, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_39 = 0; __pyx_t_7 = 0; __pyx_t_35 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8370, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_36 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_36 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8370, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_123 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_36;
+8371: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_124 = (__pyx_v_p + __pyx_v_count);
__pyx_t_125 = 0;
__pyx_t_126 = __pyx_v_xt;
__pyx_t_127 = __pyx_v_yt;
__pyx_t_128 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_127, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_128, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_col.diminfo[1].strides));
+8372: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_129 = (__pyx_v_p + __pyx_v_count);
__pyx_t_130 = 1;
__pyx_t_131 = __pyx_v_xt;
__pyx_t_132 = __pyx_v_yt;
__pyx_t_133 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_133, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_130, __pyx_pybuffernd_col.diminfo[1].strides));
+8373: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_134 = (__pyx_v_p + __pyx_v_count);
__pyx_t_135 = 2;
__pyx_t_136 = __pyx_v_xt;
__pyx_t_137 = __pyx_v_yt;
__pyx_t_138 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_138, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_135, __pyx_pybuffernd_col.diminfo[1].strides));
+8374: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8375: if w < dp - 1:
__pyx_t_24 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_24) {
/* … */
goto __pyx_L41;
}
+8376: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8377: else:
+8378: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_35);
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_39 = NULL;
__pyx_t_27 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) {
__pyx_t_39 = PyMethod_GET_SELF(__pyx_t_5);
if (likely(__pyx_t_39)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5);
__Pyx_INCREF(__pyx_t_39);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_5, function);
__pyx_t_27 = 1;
}
}
__pyx_t_1 = PyTuple_New(7+__pyx_t_27); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_39) {
__Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_39); __pyx_t_39 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_27, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_27, __pyx_t_8);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_27, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_35);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_27, __pyx_t_35);
__Pyx_GIVEREF(__pyx_t_7);
PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_27, __pyx_t_7);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 6+__pyx_t_27, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_35 = 0;
__pyx_t_7 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8378, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_5 = PyList_GET_ITEM(sequence, 0);
__pyx_t_1 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_5);
__Pyx_INCREF(__pyx_t_1);
#else
__pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8378, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_82 = Py_TYPE(__pyx_t_7)->tp_iternext;
index = 0; __pyx_t_5 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L42_unpacking_failed;
__Pyx_GOTREF(__pyx_t_5);
index = 1; __pyx_t_1 = __pyx_t_82(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L42_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_82(__pyx_t_7), 2) < 0) __PYX_ERR(0, 8378, __pyx_L1_error)
__pyx_t_82 = NULL;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
goto __pyx_L43_unpacking_done;
__pyx_L42_unpacking_failed:;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_82 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8378, __pyx_L1_error)
__pyx_L43_unpacking_done:;
}
if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8378, __pyx_L1_error)
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8378, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_5);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_20);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_22, __pyx_t_21, __pyx_t_20);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8378, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_5));
__pyx_t_5 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_20); Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_20, __pyx_t_21, __pyx_t_22);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8378, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
+8379: w = 0
__pyx_v_w = 0;
}
__pyx_L41:;
}
+8380: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8381:
+8382: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+8383: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
8384:
8385:
+8386: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+8387: for i in range(0, p):
__pyx_t_139 = __pyx_v_p;
for (__pyx_t_140 = 0; __pyx_t_140 < __pyx_t_139; __pyx_t_140+=1) {
__pyx_v_i = __pyx_t_140;
+8388: if a[i] == 1:
__pyx_t_141 = __pyx_v_i;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_141, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+8389: tmp = adotVal[i]
__pyx_t_142 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+8390: if tmp > adotValmax:
__pyx_t_24 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_24) {
/* … */
}
+8391: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
8392:
+8393: for k in range(0, p):
__pyx_t_139 = __pyx_v_p;
for (__pyx_t_140 = 0; __pyx_t_140 < __pyx_t_139; __pyx_t_140+=1) {
__pyx_v_k = __pyx_t_140;
+8394: if a[k] == 1:
__pyx_t_143 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_24) {
/* … */
}
}
+8395: a[k] = 0
__pyx_t_144 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+8396: xo = X[k]
__pyx_t_145 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_X.diminfo[0].strides));
+8397: yo = Y[k]
__pyx_t_146 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_146, __pyx_pybuffernd_Y.diminfo[0].strides));
+8398: Io = I[xo, yo]
__pyx_t_147 = __pyx_v_xo;
__pyx_t_148 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_I.diminfo[1].strides));
+8399: theta = Theta[k]
__pyx_t_149 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_Theta.diminfo[0].strides));
+8400: c = math.cos(theta)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8400, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_cos); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8400, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8400, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_7) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8400, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_35 = PyTuple_New(1+1); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8400, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_35, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_35, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_35, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8400, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8400, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_c = __pyx_t_3;
+8401: s = -math.sin(theta)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_35 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_sin); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_35))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_35); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_35); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_35, function); } } if (!__pyx_t_1) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_35, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_35, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_t_35 = PyNumber_Negative(__pyx_t_6); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_35); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8401, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_s = __pyx_t_3;
+8402: dr = adotVal[k] / adotValmax
__pyx_t_150 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+8403: MAJ[k] = MAJ[k] + dr
__pyx_t_151 = __pyx_v_k;
__pyx_t_152 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+8404: Maj = MAJ[k]
__pyx_t_153 = __pyx_v_k;
__pyx_v_Maj = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_MAJ.diminfo[0].strides));
+8405: Min = Maj / R
__pyx_v_Min = (__pyx_v_Maj / __pyx_v_R);
+8406: delX = math.ceil(math.sqrt((Maj * c) ** 2 + (Min * s) ** 2))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_c), 2.0) + powf((__pyx_v_Min * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_8) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_39 = PyTuple_New(1+1); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_39, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_39, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_1) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_35); } else { __pyx_t_39 = PyTuple_New(1+1); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_39, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_39, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_39, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_154 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_35); if (unlikely((__pyx_t_154 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8406, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_delX = __pyx_t_154;
+8407: delY = math.ceil(math.sqrt((Maj * s) ** 2 + (Min * c) ** 2))
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_39 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_ceil); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_s), 2.0) + powf((__pyx_v_Min * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_39))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_39); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_39); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_39, function); } } if (!__pyx_t_1) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_39, __pyx_t_7); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_35); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_39, __pyx_t_8, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_154 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_35); if (unlikely((__pyx_t_154 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8407, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_delY = __pyx_t_154;
+8408: red = col[k, 0]
__pyx_t_154 = __pyx_v_k;
__pyx_t_155 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_col.diminfo[1].strides));
+8409: green = col[k, 1]
__pyx_t_156 = __pyx_v_k;
__pyx_t_157 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_157, __pyx_pybuffernd_col.diminfo[1].strides));
+8410: blue = col[k, 2]
__pyx_t_158 = __pyx_v_k;
__pyx_t_159 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_159, __pyx_pybuffernd_col.diminfo[1].strides));
8411:
+8412: for deli in range(0, delX + 1):
__pyx_t_160 = (__pyx_v_delX + 1);
for (__pyx_t_161 = 0; __pyx_t_161 < __pyx_t_160; __pyx_t_161+=1) {
__pyx_v_deli = __pyx_t_161;
+8413: for delj in range(0, delY + 1):
__pyx_t_162 = (__pyx_v_delY + 1);
for (__pyx_t_163 = 0; __pyx_t_163 < __pyx_t_162; __pyx_t_163+=1) {
__pyx_v_delj = __pyx_t_163;
+8414: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_24 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_24) {
/* … */
}
}
}
8415:
+8416: i, j = xo + deli, yo + delj
__pyx_t_164 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_165 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_164;
__pyx_v_j = __pyx_t_165;
+8417: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_166 = (__pyx_t_26 != 0);
if (__pyx_t_166) {
} else {
__pyx_t_24 = __pyx_t_166;
goto __pyx_L57_bool_binop_done;
}
__pyx_t_166 = (0 <= __pyx_v_j);
if (__pyx_t_166) {
__pyx_t_166 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_166 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L57_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+8418: if I[i, j] == 0:
__pyx_t_165 = __pyx_v_i;
__pyx_t_164 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_165, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_164, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8419: for dum in range(1):
for (__pyx_t_167 = 0; __pyx_t_167 < 1; __pyx_t_167+=1) {
__pyx_v_dum = __pyx_t_167;
8420:
+8421: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8422: if I[i - 1, j] == Io:
__pyx_t_168 = (__pyx_v_i - 1);
__pyx_t_169 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_168, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_169, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8423: I[i, j] = Io
__pyx_t_170 = __pyx_v_i;
__pyx_t_171 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_171, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8424: Col[i, j, 2] = red
__pyx_t_172 = __pyx_v_i;
__pyx_t_173 = __pyx_v_j;
__pyx_t_174 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_172, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_173, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8425: Col[i, j, 1] = green
__pyx_t_175 = __pyx_v_i;
__pyx_t_176 = __pyx_v_j;
__pyx_t_177 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_176, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_177, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8426: Col[i, j, 0] = blue
__pyx_t_178 = __pyx_v_i;
__pyx_t_179 = __pyx_v_j;
__pyx_t_180 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_178, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_179, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_180, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8427: a[k] = 1
__pyx_t_181 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8428: break
goto __pyx_L61_break;
+8429: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8430: if I[i, j - 1] == Io:
__pyx_t_182 = __pyx_v_i;
__pyx_t_183 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8431: I[i, j] = Io
__pyx_t_184 = __pyx_v_i;
__pyx_t_185 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_185, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8432: Col[i, j, 2] = red
__pyx_t_186 = __pyx_v_i;
__pyx_t_187 = __pyx_v_j;
__pyx_t_188 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_186, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_187, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_188, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8433: Col[i, j, 1] = green
__pyx_t_189 = __pyx_v_i;
__pyx_t_190 = __pyx_v_j;
__pyx_t_191 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_189, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_190, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_191, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8434: Col[i, j, 0] = blue
__pyx_t_192 = __pyx_v_i;
__pyx_t_193 = __pyx_v_j;
__pyx_t_194 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_192, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_193, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_194, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8435: a[k] = 1
__pyx_t_195 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_195, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8436: break
goto __pyx_L61_break;
8437:
+8438: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+8439: if I[i, j + 1] == Io:
__pyx_t_196 = __pyx_v_i;
__pyx_t_197 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8440: I[i, j] = Io
__pyx_t_198 = __pyx_v_i;
__pyx_t_199 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8441: Col[i, j, 2] = red
__pyx_t_200 = __pyx_v_i;
__pyx_t_201 = __pyx_v_j;
__pyx_t_202 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_201, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_202, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8442: Col[i, j, 1] = green
__pyx_t_203 = __pyx_v_i;
__pyx_t_204 = __pyx_v_j;
__pyx_t_205 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8443: Col[i, j, 0] = blue
__pyx_t_206 = __pyx_v_i;
__pyx_t_207 = __pyx_v_j;
__pyx_t_208 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_206, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_207, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_208, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8444: a[k] = 1
__pyx_t_209 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8445: break
goto __pyx_L61_break;
8446:
8447:
+8448: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L61_break:;
+8449: if I[i + 1, j] == Io:
__pyx_t_210 = (__pyx_v_i + 1);
__pyx_t_211 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_210, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_211, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8450: I[i, j] = Io
__pyx_t_212 = __pyx_v_i;
__pyx_t_213 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_213, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8451: Col[i, j, 2] = red
__pyx_t_214 = __pyx_v_i;
__pyx_t_215 = __pyx_v_j;
__pyx_t_216 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_214, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_215, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_216, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8452: Col[i, j, 1] = green
__pyx_t_217 = __pyx_v_i;
__pyx_t_218 = __pyx_v_j;
__pyx_t_219 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_218, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_219, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8453: Col[i, j, 0] = blue
__pyx_t_220 = __pyx_v_i;
__pyx_t_221 = __pyx_v_j;
__pyx_t_222 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_220, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_221, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_222, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8454: a[k] = 1
__pyx_t_223 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8455: break
goto __pyx_L61_break;
8456:
8457:
+8458: i, j = xo - deli, yo - delj
__pyx_t_167 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_224 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_167;
__pyx_v_j = __pyx_t_224;
+8459: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_166 = (__pyx_t_26 != 0);
if (__pyx_t_166) {
} else {
__pyx_t_24 = __pyx_t_166;
goto __pyx_L71_bool_binop_done;
}
__pyx_t_166 = (0 <= __pyx_v_j);
if (__pyx_t_166) {
__pyx_t_166 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_166 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L71_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+8460: if I[i, j] == 0:
__pyx_t_224 = __pyx_v_i;
__pyx_t_167 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_224, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_167, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8461: for dum in range(1):
for (__pyx_t_225 = 0; __pyx_t_225 < 1; __pyx_t_225+=1) {
__pyx_v_dum = __pyx_t_225;
8462:
+8463: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8464: if I[i - 1, j] == Io:
__pyx_t_226 = (__pyx_v_i - 1);
__pyx_t_227 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_226, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_227, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8465: I[i, j] = Io
__pyx_t_228 = __pyx_v_i;
__pyx_t_229 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_228, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_229, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8466: Col[i, j, 2] = red
__pyx_t_230 = __pyx_v_i;
__pyx_t_231 = __pyx_v_j;
__pyx_t_232 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8467: Col[i, j, 1] = green
__pyx_t_233 = __pyx_v_i;
__pyx_t_234 = __pyx_v_j;
__pyx_t_235 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_233, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_234, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_235, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8468: Col[i, j, 0] = blue
__pyx_t_236 = __pyx_v_i;
__pyx_t_237 = __pyx_v_j;
__pyx_t_238 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_236, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_238, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8469: a[k] = 1
__pyx_t_239 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_239, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8470: break
goto __pyx_L75_break;
+8471: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8472: if I[i, j - 1] == Io:
__pyx_t_240 = __pyx_v_i;
__pyx_t_241 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8473: I[i, j] = Io
__pyx_t_242 = __pyx_v_i;
__pyx_t_243 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_243, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8474: Col[i, j, 2] = red
__pyx_t_244 = __pyx_v_i;
__pyx_t_245 = __pyx_v_j;
__pyx_t_246 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_244, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_245, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_246, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8475: Col[i, j, 1] = green
__pyx_t_247 = __pyx_v_i;
__pyx_t_248 = __pyx_v_j;
__pyx_t_249 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_248, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_249, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8476: Col[i, j, 0] = blue
__pyx_t_250 = __pyx_v_i;
__pyx_t_251 = __pyx_v_j;
__pyx_t_252 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_250, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_251, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_252, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8477: a[k] = 1
__pyx_t_253 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_253, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8478: break
goto __pyx_L75_break;
8479:
+8480: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+8481: if I[i, j + 1] == Io:
__pyx_t_254 = __pyx_v_i;
__pyx_t_255 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8482: I[i, j] = Io
__pyx_t_256 = __pyx_v_i;
__pyx_t_257 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_257, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8483: Col[i, j, 2] = red
__pyx_t_258 = __pyx_v_i;
__pyx_t_259 = __pyx_v_j;
__pyx_t_260 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_259, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_260, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8484: Col[i, j, 1] = green
__pyx_t_261 = __pyx_v_i;
__pyx_t_262 = __pyx_v_j;
__pyx_t_263 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8485: Col[i, j, 0] = blue
__pyx_t_264 = __pyx_v_i;
__pyx_t_265 = __pyx_v_j;
__pyx_t_266 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_265, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8486: a[k] = 1
__pyx_t_267 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_267, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8487: break
goto __pyx_L75_break;
8488:
8489:
+8490: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L75_break:;
+8491: if I[i + 1, j] == Io:
__pyx_t_268 = (__pyx_v_i + 1);
__pyx_t_269 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_268, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_269, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8492: I[i, j] = Io
__pyx_t_270 = __pyx_v_i;
__pyx_t_271 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_271, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8493: Col[i, j, 2] = red
__pyx_t_272 = __pyx_v_i;
__pyx_t_273 = __pyx_v_j;
__pyx_t_274 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_272, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_273, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_274, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8494: Col[i, j, 1] = green
__pyx_t_275 = __pyx_v_i;
__pyx_t_276 = __pyx_v_j;
__pyx_t_277 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_275, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_276, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8495: Col[i, j, 0] = blue
__pyx_t_278 = __pyx_v_i;
__pyx_t_279 = __pyx_v_j;
__pyx_t_280 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_278, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_279, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_280, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8496: a[k] = 1
__pyx_t_281 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_281, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8497: break
goto __pyx_L75_break;
8498:
+8499: for deli in range(0, -delX - 1, -1):
__pyx_t_160 = ((-__pyx_v_delX) - 1);
for (__pyx_t_161 = 0; __pyx_t_161 > __pyx_t_160; __pyx_t_161-=1) {
__pyx_v_deli = __pyx_t_161;
+8500: for delj in range(0, delY + 1):
__pyx_t_162 = (__pyx_v_delY + 1);
for (__pyx_t_163 = 0; __pyx_t_163 < __pyx_t_162; __pyx_t_163+=1) {
__pyx_v_delj = __pyx_t_163;
+8501: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_24 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_24) {
/* … */
}
}
}
8502:
+8503: i, j = xo + deli, yo + delj
__pyx_t_225 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_282 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_225;
__pyx_v_j = __pyx_t_282;
+8504: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_166 = (__pyx_t_26 != 0);
if (__pyx_t_166) {
} else {
__pyx_t_24 = __pyx_t_166;
goto __pyx_L90_bool_binop_done;
}
__pyx_t_166 = (0 <= __pyx_v_j);
if (__pyx_t_166) {
__pyx_t_166 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_166 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L90_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+8505: if I[i, j] == 0:
__pyx_t_282 = __pyx_v_i;
__pyx_t_225 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_225, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8506: for dum in range(1):
for (__pyx_t_283 = 0; __pyx_t_283 < 1; __pyx_t_283+=1) {
__pyx_v_dum = __pyx_t_283;
8507:
+8508: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8509: if I[i - 1, j] == Io:
__pyx_t_284 = (__pyx_v_i - 1);
__pyx_t_285 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_285, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8510: I[i, j] = Io
__pyx_t_286 = __pyx_v_i;
__pyx_t_287 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_286, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_287, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8511: Col[i, j, 2] = red
__pyx_t_288 = __pyx_v_i;
__pyx_t_289 = __pyx_v_j;
__pyx_t_290 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_290, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8512: Col[i, j, 1] = green
__pyx_t_291 = __pyx_v_i;
__pyx_t_292 = __pyx_v_j;
__pyx_t_293 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_291, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8513: Col[i, j, 0] = blue
__pyx_t_294 = __pyx_v_i;
__pyx_t_295 = __pyx_v_j;
__pyx_t_296 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8514: a[k] = 1
__pyx_t_297 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_297, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8515: break
goto __pyx_L94_break;
+8516: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8517: if I[i, j - 1] == Io:
__pyx_t_298 = __pyx_v_i;
__pyx_t_299 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_298, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_299, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8518: I[i, j] = Io
__pyx_t_300 = __pyx_v_i;
__pyx_t_301 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_300, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_301, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8519: Col[i, j, 2] = red
__pyx_t_302 = __pyx_v_i;
__pyx_t_303 = __pyx_v_j;
__pyx_t_304 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_303, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_304, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8520: Col[i, j, 1] = green
__pyx_t_305 = __pyx_v_i;
__pyx_t_306 = __pyx_v_j;
__pyx_t_307 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_305, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_306, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8521: Col[i, j, 0] = blue
__pyx_t_308 = __pyx_v_i;
__pyx_t_309 = __pyx_v_j;
__pyx_t_310 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8522: a[k] = 1
__pyx_t_311 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_311, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8523: break
goto __pyx_L94_break;
8524:
+8525: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+8526: if I[i, j + 1] == Io:
__pyx_t_312 = __pyx_v_i;
__pyx_t_313 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_313, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8527: I[i, j] = Io
__pyx_t_314 = __pyx_v_i;
__pyx_t_315 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_314, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_315, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8528: Col[i, j, 2] = red
__pyx_t_316 = __pyx_v_i;
__pyx_t_317 = __pyx_v_j;
__pyx_t_318 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_317, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_318, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8529: Col[i, j, 1] = green
__pyx_t_319 = __pyx_v_i;
__pyx_t_320 = __pyx_v_j;
__pyx_t_321 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8530: Col[i, j, 0] = blue
__pyx_t_322 = __pyx_v_i;
__pyx_t_323 = __pyx_v_j;
__pyx_t_324 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8531: a[k] = 1
__pyx_t_325 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_325, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8532: break
goto __pyx_L94_break;
8533:
8534:
+8535: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L94_break:;
+8536: if I[i + 1, j] == Io:
__pyx_t_326 = (__pyx_v_i + 1);
__pyx_t_327 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_326, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_327, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8537: I[i, j] = Io
__pyx_t_328 = __pyx_v_i;
__pyx_t_329 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_328, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_329, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8538: Col[i, j, 2] = red
__pyx_t_330 = __pyx_v_i;
__pyx_t_331 = __pyx_v_j;
__pyx_t_332 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_330, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_331, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_332, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8539: Col[i, j, 1] = green
__pyx_t_333 = __pyx_v_i;
__pyx_t_334 = __pyx_v_j;
__pyx_t_335 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_333, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_334, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8540: Col[i, j, 0] = blue
__pyx_t_336 = __pyx_v_i;
__pyx_t_337 = __pyx_v_j;
__pyx_t_338 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8541: a[k] = 1
__pyx_t_339 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_339, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8542: break
goto __pyx_L94_break;
8543:
8544:
+8545: i, j = xo - deli, yo - delj
__pyx_t_283 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_340 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_283;
__pyx_v_j = __pyx_t_340;
+8546: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_26 = (0 <= __pyx_v_i);
if (__pyx_t_26) {
__pyx_t_26 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_166 = (__pyx_t_26 != 0);
if (__pyx_t_166) {
} else {
__pyx_t_24 = __pyx_t_166;
goto __pyx_L104_bool_binop_done;
}
__pyx_t_166 = (0 <= __pyx_v_j);
if (__pyx_t_166) {
__pyx_t_166 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_26 = (__pyx_t_166 != 0);
__pyx_t_24 = __pyx_t_26;
__pyx_L104_bool_binop_done:;
if (__pyx_t_24) {
/* … */
}
+8547: if I[i, j] == 0:
__pyx_t_340 = __pyx_v_i;
__pyx_t_283 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_340, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_283, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8548: for dum in range(1):
for (__pyx_t_341 = 0; __pyx_t_341 < 1; __pyx_t_341+=1) {
__pyx_v_dum = __pyx_t_341;
8549:
+8550: if i > 0:
__pyx_t_24 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8551: if I[i - 1, j] == Io:
__pyx_t_342 = (__pyx_v_i - 1);
__pyx_t_343 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_343, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8552: I[i, j] = Io
__pyx_t_344 = __pyx_v_i;
__pyx_t_345 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_344, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_345, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8553: Col[i, j, 2] = red
__pyx_t_346 = __pyx_v_i;
__pyx_t_347 = __pyx_v_j;
__pyx_t_348 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_347, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_348, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8554: Col[i, j, 1] = green
__pyx_t_349 = __pyx_v_i;
__pyx_t_350 = __pyx_v_j;
__pyx_t_351 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8555: Col[i, j, 0] = blue
__pyx_t_352 = __pyx_v_i;
__pyx_t_353 = __pyx_v_j;
__pyx_t_354 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8556: a[k] = 1
__pyx_t_355 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_355, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8557: break
goto __pyx_L108_break;
+8558: if j > 0:
__pyx_t_24 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8559: if I[i, j - 1] == Io:
__pyx_t_356 = __pyx_v_i;
__pyx_t_357 = (__pyx_v_j - 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_356, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_357, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8560: I[i, j] = Io
__pyx_t_358 = __pyx_v_i;
__pyx_t_359 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_358, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_359, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8561: Col[i, j, 2] = red
__pyx_t_360 = __pyx_v_i;
__pyx_t_361 = __pyx_v_j;
__pyx_t_362 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_360, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_361, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_362, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8562: Col[i, j, 1] = green
__pyx_t_363 = __pyx_v_i;
__pyx_t_364 = __pyx_v_j;
__pyx_t_365 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_363, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_364, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8563: Col[i, j, 0] = blue
__pyx_t_366 = __pyx_v_i;
__pyx_t_367 = __pyx_v_j;
__pyx_t_368 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8564: a[k] = 1
__pyx_t_369 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_369, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8565: break
goto __pyx_L108_break;
8566:
+8567: if j < n - 1:
__pyx_t_24 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
+8568: if I[i, j + 1] == Io:
__pyx_t_370 = __pyx_v_i;
__pyx_t_371 = (__pyx_v_j + 1);
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_371, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8569: I[i, j] = Io
__pyx_t_372 = __pyx_v_i;
__pyx_t_373 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_372, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_373, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8570: Col[i, j, 2] = red
__pyx_t_374 = __pyx_v_i;
__pyx_t_375 = __pyx_v_j;
__pyx_t_376 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_375, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_376, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8571: Col[i, j, 1] = green
__pyx_t_377 = __pyx_v_i;
__pyx_t_378 = __pyx_v_j;
__pyx_t_379 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_377, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_378, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8572: Col[i, j, 0] = blue
__pyx_t_380 = __pyx_v_i;
__pyx_t_381 = __pyx_v_j;
__pyx_t_382 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8573: a[k] = 1
__pyx_t_383 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_383, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8574: break
goto __pyx_L108_break;
8575:
8576:
+8577: if i < m - 1:
__pyx_t_24 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_24) {
/* … */
}
}
__pyx_L108_break:;
+8578: if I[i + 1, j] == Io:
__pyx_t_384 = (__pyx_v_i + 1);
__pyx_t_385 = __pyx_v_j;
__pyx_t_24 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_384, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_385, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_24) {
/* … */
}
+8579: I[i, j] = Io
__pyx_t_386 = __pyx_v_i;
__pyx_t_387 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_386, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_387, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8580: Col[i, j, 2] = red
__pyx_t_388 = __pyx_v_i;
__pyx_t_389 = __pyx_v_j;
__pyx_t_390 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_389, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_390, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8581: Col[i, j, 1] = green
__pyx_t_391 = __pyx_v_i;
__pyx_t_392 = __pyx_v_j;
__pyx_t_393 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_391, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8582: Col[i, j, 0] = blue
__pyx_t_394 = __pyx_v_i;
__pyx_t_395 = __pyx_v_j;
__pyx_t_396 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8583: a[k] = 1
__pyx_t_397 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_397, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8584: break
goto __pyx_L108_break;
8585:
8586:
8587:
+8588: if a[k] == 0:
__pyx_t_160 = __pyx_v_k;
__pyx_t_24 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_24) {
/* … */
}
+8589: xmin = max(0, xo - delX)
__pyx_t_161 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_398 = 0;
if (((__pyx_t_161 > __pyx_t_398) != 0)) {
__pyx_t_162 = __pyx_t_161;
} else {
__pyx_t_162 = __pyx_t_398;
}
__pyx_v_xmin = __pyx_t_162;
+8590: xmax = min(m - 1, xo + delX)
__pyx_t_162 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_161 = (__pyx_v_m - 1);
if (((__pyx_t_162 < __pyx_t_161) != 0)) {
__pyx_t_163 = __pyx_t_162;
} else {
__pyx_t_163 = __pyx_t_161;
}
__pyx_v_xmax = __pyx_t_163;
+8591: ymin = max(0, yo - delY)
__pyx_t_163 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_398 = 0;
if (((__pyx_t_163 > __pyx_t_398) != 0)) {
__pyx_t_162 = __pyx_t_163;
} else {
__pyx_t_162 = __pyx_t_398;
}
__pyx_v_ymin = __pyx_t_162;
+8592: ymax = min(n - 1, yo + delY)
__pyx_t_162 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_163 = (__pyx_v_n - 1);
if (((__pyx_t_162 < __pyx_t_163) != 0)) {
__pyx_t_161 = __pyx_t_162;
} else {
__pyx_t_161 = __pyx_t_163;
}
__pyx_v_ymax = __pyx_t_161;
+8593: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_161 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
8594:
8595:
+8596: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+8597: nnz = cv2.countNonZero(I)
__pyx_t_39 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_39 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_39) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_8, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_39); __pyx_t_39 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_7, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8597, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_139 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_35); if (unlikely((__pyx_t_139 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8597, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_nnz = __pyx_t_139; }
8598:
8599:
+8600: obj.p = p
__pyx_t_35 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8600, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_35) < 0) __PYX_ERR(0, 8600, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+8601: toc = time.time()
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8601, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_8) { __pyx_t_35 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8601, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } else { __pyx_t_35 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8601, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_23 = __pyx_PyFloat_AsDouble(__pyx_t_35); if (unlikely((__pyx_t_23 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 8601, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0; __pyx_v_toc = __pyx_t_23;
+8602: obj.exetime = toc - tic
__pyx_t_35 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8602, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_35) < 0) __PYX_ERR(0, 8602, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+8603: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_delete); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_39 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_39, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_39); __pyx_t_39 = 0; __pyx_t_39 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_39)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_39); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, __pyx_t_39); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_6); __pyx_t_39 = 0; __pyx_t_6 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_25, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_27 = 1; } } __pyx_t_25 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_25, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_25, 0+__pyx_t_27, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_25, 1+__pyx_t_27, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_25, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_35) < 0) __PYX_ERR(0, 8603, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+8604: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_25 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_delete); if (unlikely(!__pyx_t_25)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_25); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_39 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_39 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_39)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_39); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_39) { __Pyx_GIVEREF(__pyx_t_39); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_39); __pyx_t_39 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_6); __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; __pyx_t_27 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_25))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_25); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_25); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_25, function); __pyx_t_27 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_27); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_27, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_27, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_35 = __Pyx_PyObject_Call(__pyx_t_25, __pyx_t_5, NULL); if (unlikely(!__pyx_t_35)) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_35); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_35) < 0) __PYX_ERR(0, 8604, __pyx_L1_error) __Pyx_DECREF(__pyx_t_35); __pyx_t_35 = 0;
+8605: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 8605, __pyx_L1_error)
+8606: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 8606, __pyx_L1_error)
+8607: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
8608:
8609:
8610:
+8611: def Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_59Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_59Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot = {"Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot", (PyCFunction)__pyx_pw_9libEVOLVE_59Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_59Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_58Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_58Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
PY_LONG_LONG __pyx_v_MN;
float __pyx_v_fstop;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
PY_LONG_LONG __pyx_v_seq;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
PyObject *__pyx_v_Ndot = NULL;
PyObject *__pyx_v_Gt = NULL;
PyObject *__pyx_v_Thetafunc = NULL;
PyObject *__pyx_v_Adotfunc = NULL;
PyObject *__pyx_v_Rfunc = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_count;
PY_LONG_LONG __pyx_v_dp;
PY_LONG_LONG __pyx_v_nnz;
PY_LONG_LONG __pyx_v_countim;
PY_LONG_LONG __pyx_v_w;
PY_LONG_LONG __pyx_v_xt;
PY_LONG_LONG __pyx_v_yt;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
CYTHON_UNUSED PY_LONG_LONG __pyx_v_dum;
PY_LONG_LONG __pyx_v_Iter;
float __pyx_v_dt;
float __pyx_v_f;
float __pyx_v_t;
float __pyx_v_tmp;
float __pyx_v_Min;
float __pyx_v_Maj;
float __pyx_v_theta;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_dr;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
PyArrayObject *__pyx_v_MAJ = 0;
PyArrayObject *__pyx_v_xtrial = 0;
PyArrayObject *__pyx_v_ytrial = 0;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_adotVal = 0;
PyArrayObject *__pyx_v_Rval = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_col = 0;
double __pyx_v_adotValmax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_MAJ;
__Pyx_Buffer __pyx_pybuffer_MAJ;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rval;
__Pyx_Buffer __pyx_pybuffer_Rval;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_adotVal;
__Pyx_Buffer __pyx_pybuffer_adotVal;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_xtrial;
__Pyx_Buffer __pyx_pybuffer_xtrial;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ytrial;
__Pyx_Buffer __pyx_pybuffer_ytrial;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot", 0);
__pyx_pybuffer_MAJ.pybuffer.buf = NULL;
__pyx_pybuffer_MAJ.refcount = 0;
__pyx_pybuffernd_MAJ.data = NULL;
__pyx_pybuffernd_MAJ.rcbuffer = &__pyx_pybuffer_MAJ;
__pyx_pybuffer_xtrial.pybuffer.buf = NULL;
__pyx_pybuffer_xtrial.refcount = 0;
__pyx_pybuffernd_xtrial.data = NULL;
__pyx_pybuffernd_xtrial.rcbuffer = &__pyx_pybuffer_xtrial;
__pyx_pybuffer_ytrial.pybuffer.buf = NULL;
__pyx_pybuffer_ytrial.refcount = 0;
__pyx_pybuffernd_ytrial.data = NULL;
__pyx_pybuffernd_ytrial.rcbuffer = &__pyx_pybuffer_ytrial;
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_adotVal.pybuffer.buf = NULL;
__pyx_pybuffer_adotVal.refcount = 0;
__pyx_pybuffernd_adotVal.data = NULL;
__pyx_pybuffernd_adotVal.rcbuffer = &__pyx_pybuffer_adotVal;
__pyx_pybuffer_Rval.pybuffer.buf = NULL;
__pyx_pybuffer_Rval.refcount = 0;
__pyx_pybuffernd_Rval.data = NULL;
__pyx_pybuffernd_Rval.rcbuffer = &__pyx_pybuffer_Rval;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_5);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_26);
__Pyx_XDECREF(__pyx_t_36);
__Pyx_XDECREF(__pyx_t_40);
__Pyx_XDECREF(__pyx_t_44);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF(__pyx_v_Ndot);
__Pyx_XDECREF(__pyx_v_Gt);
__Pyx_XDECREF(__pyx_v_Thetafunc);
__Pyx_XDECREF(__pyx_v_Adotfunc);
__Pyx_XDECREF(__pyx_v_Rfunc);
__Pyx_XDECREF((PyObject *)__pyx_v_MAJ);
__Pyx_XDECREF((PyObject *)__pyx_v_xtrial);
__Pyx_XDECREF((PyObject *)__pyx_v_ytrial);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_adotVal);
__Pyx_XDECREF((PyObject *)__pyx_v_Rval);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__69 = PyTuple_Pack(74, __pyx_n_s_obj, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_MN, __pyx_n_s_fstop, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_seq, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_Ndot, __pyx_n_s_Gt, __pyx_n_s_Thetafunc, __pyx_n_s_Adotfunc, __pyx_n_s_Rfunc, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_p, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_Io, __pyx_n_s_count, __pyx_n_s_dp, __pyx_n_s_nnz, __pyx_n_s_rad, __pyx_n_s_countim, __pyx_n_s_w, __pyx_n_s_xt, __pyx_n_s_yt, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_k, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax, __pyx_n_s_dum, __pyx_n_s_Iter, __pyx_n_s_dt, __pyx_n_s_f, __pyx_n_s_t, __pyx_n_s_tmp, __pyx_n_s_Min, __pyx_n_s_Maj, __pyx_n_s_theta, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_dr, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_MAJ, __pyx_n_s_xtrial, __pyx_n_s_ytrial, __pyx_n_s_I, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_Theta, __pyx_n_s_adotVal, __pyx_n_s_Rval, __pyx_n_s_Col, __pyx_n_s_col, __pyx_n_s_adotValmax); if (unlikely(!__pyx_tuple__69)) __PYX_ERR(0, 8611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__69);
__Pyx_GIVEREF(__pyx_tuple__69);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_59Evolve_2D_Anisotropic_Continuous_Generic_Elliptical_with_aspect_with_theta_with_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8611, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_12, __pyx_t_2) < 0) __PYX_ERR(0, 8611, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
__pyx_codeobj__70 = (PyObject*)__Pyx_PyCode_New(1, 0, 74, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__69, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_E_Dropbox_Public_PhDResources_10, __pyx_n_s_Evolve_2D_Anisotropic_Continuous_12, 8611, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__70)) __PYX_ERR(0, 8611, __pyx_L1_error)
8612: # Grabbing data from the input object
+8613: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8613, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8613, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+8614: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8614, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8614, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+8615: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8615, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8615, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+8616: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8616, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8616, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+8617: cdef long long MN = m * n
__pyx_v_MN = (__pyx_v_m * __pyx_v_n);
+8618: cdef float fstop = obj.fstop
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fstop); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8618, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8618, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_fstop = __pyx_t_3;
+8619: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8619, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8619, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+8620: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8620, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 8620, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_4;
+8621: cdef long long seq = obj.seq
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_seq); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8621, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8621, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_seq = __pyx_t_2;
+8622: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8622, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+8623: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8623, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
+8624: Ndot = obj.Ndot
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Ndot); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8624, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Ndot = __pyx_t_1; __pyx_t_1 = 0;
+8625: Gt = obj.Gt
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Gt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8625, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Gt = __pyx_t_1; __pyx_t_1 = 0;
+8626: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8626, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF_SET(__pyx_v_fd, __pyx_t_1); __pyx_t_1 = 0;
+8627: Thetafunc = obj.Thetafunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Thetafunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8627, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Thetafunc = __pyx_t_1; __pyx_t_1 = 0;
+8628: Adotfunc = obj.Adotfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Adotfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8628, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Adotfunc = __pyx_t_1; __pyx_t_1 = 0;
+8629: Rfunc = obj.Rfunc
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rfunc); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8629, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_Rfunc = __pyx_t_1; __pyx_t_1 = 0;
8630:
8631: # Declaring other variables
8632: cdef double tic, toc
8633: cdef long long p, deli, delj, PN, PE, PW, PS, Io, count, dp, nnz, rad, countim, w, xt, yt, i, j, k, xo, yo, delX, delY, xmin, xmax, ymin, ymax, dum, Iter
8634: cdef float dt, f, t, tmp, Min, Maj, theta, c, s, dr, red, green, blue
+8635: cdef np.ndarray[np.float64_t, ndim = 1] MAJ = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8635, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8635, __pyx_L1_error) __pyx_t_9 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_MAJ.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_MAJ = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8635, __pyx_L1_error) } else {__pyx_pybuffernd_MAJ.diminfo[0].strides = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_MAJ.diminfo[0].shape = __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.shape[0]; } } __pyx_t_9 = 0; __pyx_v_MAJ = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+8636: cdef np.ndarray[np.int64_t, ndim = 1] xtrial = np.zeros(MN, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8636, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8636, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_xtrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8636, __pyx_L1_error) } else {__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_10 = 0; __pyx_v_xtrial = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+8637: cdef np.ndarray[np.int64_t, ndim = 1] ytrial = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8637, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8637, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_ytrial = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8637, __pyx_L1_error) } else {__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; } } __pyx_t_11 = 0; __pyx_v_ytrial = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+8638: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __pyx_t_5 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8638, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8638, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8638, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_12 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+8639: cdef np.ndarray[np.int_t, ndim = 1] a = np.ones(MN, dtype=np.int)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_int); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8639, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8639, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8639, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+8640: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(MN, dtype=np.int64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8640, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8640, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8640, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+8641: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(MN, dtype=np.int64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8641, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8641, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8641, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_15 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+8642: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(MN, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8642, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8642, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8642, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_16 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+8643: cdef np.ndarray[np.float64_t, ndim = 1] adotVal = np.zeros(MN, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8643, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8643, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_5); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_adotVal.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_adotVal = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8643, __pyx_L1_error) } else {__pyx_pybuffernd_adotVal.diminfo[0].strides = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_adotVal.diminfo[0].shape = __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.shape[0]; } } __pyx_t_17 = 0; __pyx_v_adotVal = ((PyArrayObject *)__pyx_t_5); __pyx_t_5 = 0;
+8644: cdef np.ndarray[np.float64_t, ndim = 1] Rval = np.zeros(MN, dtype=np.float64)
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8644, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8644, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rval.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Rval = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8644, __pyx_L1_error) } else {__pyx_pybuffernd_Rval.diminfo[0].strides = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rval.diminfo[0].shape = __pyx_pybuffernd_Rval.rcbuffer->pybuffer.shape[0]; } } __pyx_t_18 = 0; __pyx_v_Rval = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+8645: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8645, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8645, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8645, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_19 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+8646: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((MN, 3), dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8646, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8646, __pyx_L1_error) __pyx_t_20 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_20, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 8646, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_20 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+8647: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8647, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8647, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
+8648: col = np.random.random((MN, 3))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_random); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_int_3); __pyx_t_5 = 0; __pyx_t_5 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_5) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8648, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8648, __pyx_L1_error) __pyx_t_20 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_20, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_v_col, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8648, __pyx_L1_error) } __pyx_t_20 = 0; __Pyx_DECREF_SET(__pyx_v_col, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+8649: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8649, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8649, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (__pyx_t_6) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8649, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { __pyx_t_7 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8649, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_24 = __pyx_PyFloat_AsDouble(__pyx_t_7); if (unlikely((__pyx_t_24 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 8649, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_tic = __pyx_t_24;
8650:
+8651: t = 0
__pyx_v_t = 0.0;
+8652: p = 0
__pyx_v_p = 0;
+8653: dp = 0
__pyx_v_dp = 0;
+8654: countim = 0
__pyx_v_countim = 0;
+8655: nnz = 0
__pyx_v_nnz = 0;
+8656: Iter = 1
__pyx_v_Iter = 1;
+8657: while nnz < MN:
while (1) {
__pyx_t_25 = ((__pyx_v_nnz < __pyx_v_MN) != 0);
if (!__pyx_t_25) break;
+8658: f = nnz / MN
__pyx_v_f = (__pyx_v_nnz / __pyx_v_MN);
+8659: dt = 1.0 / Gt(t)
__pyx_t_1 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Gt); __pyx_t_6 = __pyx_v_Gt; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_8) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8659, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyFloat_TrueDivideCObj(__pyx_float_1_0, __pyx_t_7, 1.0, 0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8659, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8659, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_dt = __pyx_t_3;
+8660: dp = int((1 - f) * Ndot(t) * dt)
__pyx_t_6 = PyFloat_FromDouble((1.0 - __pyx_v_f)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = PyFloat_FromDouble(__pyx_v_t); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Ndot); __pyx_t_1 = __pyx_v_Ndot; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_8) { __pyx_t_7 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_GOTREF(__pyx_t_7); } else { __pyx_t_26 = PyTuple_New(1+1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 0+1, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_26, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyNumber_Multiply(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyFloat_FromDouble(__pyx_v_dt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyNumber_Multiply(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyNumber_Int(__pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_7); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8660, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_dp = __pyx_t_2;
+8661: t = t + dt
__pyx_v_t = (__pyx_v_t + __pyx_v_dt);
+8662: if pdelNxy == []:
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8662, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_7, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8662, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_25 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_25 < 0)) __PYX_ERR(0, 8662, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_25) { /* … */ goto __pyx_L5; }
+8663: if seq == 1:
switch (__pyx_v_seq) {
case 1:
/* … */
break;
+8664: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L7_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L7_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8665: count = 0
__pyx_v_count = 0;
+8666: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8667: xt = np.random.randint(0, m - 1)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_randint); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8667, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8667, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_2;
+8668: yt = np.random.randint(0, n - 1)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8668, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8668, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8668, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8668, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8668, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8668, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8668, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_2;
+8669: if I[xt, yt] == 0:
__pyx_t_2 = __pyx_v_xt;
__pyx_t_29 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_2, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_29, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8670: I[xt, yt] = p + count + 1
__pyx_t_30 = __pyx_v_xt;
__pyx_t_31 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_30, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_31, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8671: X[p + count] = xt
__pyx_t_32 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8672: Y[p + count] = yt
__pyx_t_33 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8673: a[p + count] = 1
__pyx_t_34 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8674: MAJ[p + count] = 1
__pyx_t_35 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8675: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8675, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8675, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8675, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_1 = __pyx_v_Thetafunc; __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8675, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_int_1); __pyx_t_7 = 0; __pyx_t_26 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8675, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8675, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_38 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8676: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, Theta[p + count])
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_39 = (__pyx_v_p + __pyx_v_count); __pyx_t_26 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_7 = __pyx_v_Rfunc; __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_26); __pyx_t_1 = 0; __pyx_t_36 = 0; __pyx_t_5 = 0; __pyx_t_26 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8676, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8676, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_41 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_41, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8677: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], Rval[p + count])
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_42 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_42, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_43 = (__pyx_v_p + __pyx_v_count); __pyx_t_36 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_43, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_1 = __pyx_v_Adotfunc; __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_44 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_44, 0+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_44, 1+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_44, 2+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_44, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_44, 4+__pyx_t_28, __pyx_t_36); __pyx_t_7 = 0; __pyx_t_40 = 0; __pyx_t_26 = 0; __pyx_t_5 = 0; __pyx_t_36 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_44, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8677, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_45 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_45, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8678: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_46 = (__pyx_v_p + __pyx_v_count);
__pyx_t_47 = 0;
__pyx_t_48 = __pyx_v_xt;
__pyx_t_49 = __pyx_v_yt;
__pyx_t_50 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_49, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_50, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_46, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_47, __pyx_pybuffernd_col.diminfo[1].strides));
+8679: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_51 = (__pyx_v_p + __pyx_v_count);
__pyx_t_52 = 1;
__pyx_t_53 = __pyx_v_xt;
__pyx_t_54 = __pyx_v_yt;
__pyx_t_55 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_54, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_55, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_51, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_52, __pyx_pybuffernd_col.diminfo[1].strides));
+8680: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_56 = (__pyx_v_p + __pyx_v_count);
__pyx_t_57 = 2;
__pyx_t_58 = __pyx_v_xt;
__pyx_t_59 = __pyx_v_yt;
__pyx_t_60 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_59, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_60, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_57, __pyx_pybuffernd_col.diminfo[1].strides));
+8681: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8682: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8683:
+8684: elif seq == 2:
case 2:
/* … */
break;
+8685: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L14_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L14_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8686: count = 0
__pyx_v_count = 0;
+8687: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8688: xt = np.random.randint(0, m - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_44 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_44, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_44); __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8688, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_61 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_61 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8688, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_61;
+8689: yt = np.random.randint(0, n - 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_44 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_44 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_44)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_44); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_44) { __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_44); __pyx_t_44 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8689, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_61 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_61 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8689, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_61;
+8690: if I[xt, yt] == 0:
__pyx_t_61 = __pyx_v_xt;
__pyx_t_62 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_61, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_62, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8691: I[xt, yt] = p + count + 1
__pyx_t_63 = __pyx_v_xt;
__pyx_t_64 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_63, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_64, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8692: X[p + count] = xt
__pyx_t_65 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8693: Y[p + count] = yt
__pyx_t_66 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8694: a[p + count] = 1
__pyx_t_67 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8695: MAJ[p + count] = 1
__pyx_t_68 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_68, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8696: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8696, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8696, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8696, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_44 = __pyx_v_Thetafunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8696, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_36 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8696, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8696, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_69 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_69, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8697: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], 1)
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_70 = (__pyx_v_p + __pyx_v_count); __pyx_t_36 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_70, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_1 = __pyx_v_Adotfunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_t_36); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_int_1); __pyx_t_44 = 0; __pyx_t_40 = 0; __pyx_t_5 = 0; __pyx_t_36 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8697, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8697, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_71 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8698: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], Theta[p + count])
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_72 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_72, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_73 = (__pyx_v_p + __pyx_v_count); __pyx_t_40 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_73, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_44 = __pyx_v_Rfunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_28, __pyx_t_40); __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_36 = 0; __pyx_t_5 = 0; __pyx_t_40 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8698, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_74 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8699: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_75 = (__pyx_v_p + __pyx_v_count);
__pyx_t_76 = 0;
__pyx_t_77 = __pyx_v_xt;
__pyx_t_78 = __pyx_v_yt;
__pyx_t_79 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_77, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_78, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_79, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_76, __pyx_pybuffernd_col.diminfo[1].strides));
+8700: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_80 = (__pyx_v_p + __pyx_v_count);
__pyx_t_81 = 1;
__pyx_t_82 = __pyx_v_xt;
__pyx_t_83 = __pyx_v_yt;
__pyx_t_84 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_82, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_83, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_84, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_col.diminfo[1].strides));
+8701: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_85 = (__pyx_v_p + __pyx_v_count);
__pyx_t_86 = 2;
__pyx_t_87 = __pyx_v_xt;
__pyx_t_88 = __pyx_v_yt;
__pyx_t_89 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_87, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_88, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_89, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_col.diminfo[1].strides));
+8702: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8703: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8704:
+8705: elif seq == 3:
case 3:
/* … */
break;
+8706: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L21_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L21_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8707: count = 0
__pyx_v_count = 0;
+8708: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8709: xt = np.random.randint(0, m - 1)
__pyx_t_44 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_44, __pyx_n_s_random); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_44 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_randint); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8709, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_90 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_90 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8709, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_90;
+8710: yt = np.random.randint(0, n - 1)
__pyx_t_44 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_44, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_44 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8710, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_90 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_90 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8710, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_90;
+8711: if I[xt, yt] == 0:
__pyx_t_90 = __pyx_v_xt;
__pyx_t_91 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_90, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_91, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8712: I[xt, yt] = p + count + 1
__pyx_t_92 = __pyx_v_xt;
__pyx_t_93 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_93, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8713: X[p + count] = xt
__pyx_t_94 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8714: Y[p + count] = yt
__pyx_t_95 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_95, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8715: a[p + count] = 1
__pyx_t_96 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_96, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8716: MAJ[p + count] = 1
__pyx_t_97 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_97, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8717: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_8 = __pyx_v_Rfunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_int_0); __pyx_t_44 = 0; __pyx_t_40 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8717, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8717, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_98 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8718: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rval[p + count], 1)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_99 = (__pyx_v_p + __pyx_v_count); __pyx_t_40 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_99, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_44 = __pyx_v_Thetafunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_t_40); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_int_1); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_40 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8718, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8718, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_100 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_100, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8719: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], Rval[p + count])
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_101 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_102 = (__pyx_v_p + __pyx_v_count); __pyx_t_7 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_8 = __pyx_v_Adotfunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_t_7); __pyx_t_44 = 0; __pyx_t_1 = 0; __pyx_t_40 = 0; __pyx_t_5 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8719, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_103 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8720: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_104 = (__pyx_v_p + __pyx_v_count);
__pyx_t_105 = 0;
__pyx_t_106 = __pyx_v_xt;
__pyx_t_107 = __pyx_v_yt;
__pyx_t_108 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_106, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_107, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_108, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_104, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_105, __pyx_pybuffernd_col.diminfo[1].strides));
+8721: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_109 = (__pyx_v_p + __pyx_v_count);
__pyx_t_110 = 1;
__pyx_t_111 = __pyx_v_xt;
__pyx_t_112 = __pyx_v_yt;
__pyx_t_113 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_112, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_113, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_109, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_110, __pyx_pybuffernd_col.diminfo[1].strides));
+8722: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_114 = (__pyx_v_p + __pyx_v_count);
__pyx_t_115 = 2;
__pyx_t_116 = __pyx_v_xt;
__pyx_t_117 = __pyx_v_yt;
__pyx_t_118 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_117, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_118, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_114, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_115, __pyx_pybuffernd_col.diminfo[1].strides));
+8723: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8724: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8725:
+8726: elif seq == 4:
case 4:
/* … */
break;
+8727: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L28_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L28_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L28_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8728: count = 0
__pyx_v_count = 0;
+8729: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8730: xt = np.random.randint(0, m - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_26, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_26); __pyx_t_26 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8730, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_119 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_119 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8730, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_119;
+8731: yt = np.random.randint(0, n - 1)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8731, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_119 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_119 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8731, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_119;
+8732: if I[xt, yt] == 0:
__pyx_t_119 = __pyx_v_xt;
__pyx_t_120 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_120, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8733: I[xt, yt] = p + count + 1
__pyx_t_121 = __pyx_v_xt;
__pyx_t_122 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8734: X[p + count] = xt
__pyx_t_123 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_123, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8735: Y[p + count] = yt
__pyx_t_124 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8736: a[p + count] = 1
__pyx_t_125 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_125, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8737: MAJ[p + count] = 1
__pyx_t_126 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8738: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_26 = __pyx_v_Rfunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_int_0); __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8738, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8738, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_127 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8739: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, Rval[p + count])
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_128 = (__pyx_v_p + __pyx_v_count); __pyx_t_7 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_128, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_8 = __pyx_v_Adotfunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_44 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_44, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_44, 1+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_44, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_44, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_44, 4+__pyx_t_28, __pyx_t_7); __pyx_t_26 = 0; __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_44, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8739, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8739, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_129 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_129, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8740: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rval[p + count], adotVal[p + count])
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_130 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_130, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_131 = (__pyx_v_p + __pyx_v_count); __pyx_t_1 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_26 = __pyx_v_Thetafunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_t_1); __pyx_t_8 = 0; __pyx_t_44 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8740, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_132 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_132, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8741: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_133 = (__pyx_v_p + __pyx_v_count);
__pyx_t_134 = 0;
__pyx_t_135 = __pyx_v_xt;
__pyx_t_136 = __pyx_v_yt;
__pyx_t_137 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_137, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_134, __pyx_pybuffernd_col.diminfo[1].strides));
+8742: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_138 = (__pyx_v_p + __pyx_v_count);
__pyx_t_139 = 1;
__pyx_t_140 = __pyx_v_xt;
__pyx_t_141 = __pyx_v_yt;
__pyx_t_142 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_142, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_139, __pyx_pybuffernd_col.diminfo[1].strides));
+8743: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_143 = (__pyx_v_p + __pyx_v_count);
__pyx_t_144 = 2;
__pyx_t_145 = __pyx_v_xt;
__pyx_t_146 = __pyx_v_yt;
__pyx_t_147 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_147, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_144, __pyx_pybuffernd_col.diminfo[1].strides));
+8744: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8745: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8746:
+8747: elif seq == 5:
case 5:
/* … */
break;
+8748: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L35_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L35_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L35_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8749: count = 0
__pyx_v_count = 0;
+8750: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8751: xt = np.random.randint(0, m - 1)
__pyx_t_26 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_26, __pyx_n_s_random); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_36, __pyx_n_s_randint); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_36); __pyx_t_36 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8751, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_148 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_148 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8751, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_148;
+8752: yt = np.random.randint(0, n - 1)
__pyx_t_26 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_26, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8752, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_148 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_148 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8752, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_148;
+8753: if I[xt, yt] == 0:
__pyx_t_148 = __pyx_v_xt;
__pyx_t_149 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_148, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_149, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8754: I[xt, yt] = p + count + 1
__pyx_t_150 = __pyx_v_xt;
__pyx_t_151 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_151, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8755: X[p + count] = xt
__pyx_t_152 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_152, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8756: Y[p + count] = yt
__pyx_t_153 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_153, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8757: a[p + count] = 1
__pyx_t_154 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8758: MAJ[p + count] = 1
__pyx_t_155 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_155, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8759: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_36 = __pyx_v_Adotfunc; __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_36))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_44 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_44, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_44, 1+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_44, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_44, 3+__pyx_t_28, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_44, 4+__pyx_t_28, __pyx_int_1); __pyx_t_26 = 0; __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_44, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8759, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8759, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_156 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8760: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, adotVal[p + count])
__pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_157 = (__pyx_v_p + __pyx_v_count); __pyx_t_1 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_26 = __pyx_v_Thetafunc; __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_28, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_28, __pyx_t_1); __pyx_t_36 = 0; __pyx_t_44 = 0; __pyx_t_5 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8760, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8760, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_158 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8761: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], Theta[p + count])
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_159 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_159, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_160 = (__pyx_v_p + __pyx_v_count); __pyx_t_44 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_160, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_36 = __pyx_v_Rfunc; __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_36))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_44); __pyx_t_26 = 0; __pyx_t_8 = 0; __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8761, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_161 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8762: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_162 = (__pyx_v_p + __pyx_v_count);
__pyx_t_163 = 0;
__pyx_t_164 = __pyx_v_xt;
__pyx_t_165 = __pyx_v_yt;
__pyx_t_166 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_166, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_162, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_163, __pyx_pybuffernd_col.diminfo[1].strides));
+8763: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_167 = (__pyx_v_p + __pyx_v_count);
__pyx_t_168 = 1;
__pyx_t_169 = __pyx_v_xt;
__pyx_t_170 = __pyx_v_yt;
__pyx_t_171 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_169, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_170, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_171, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_167, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_168, __pyx_pybuffernd_col.diminfo[1].strides));
+8764: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_172 = (__pyx_v_p + __pyx_v_count);
__pyx_t_173 = 2;
__pyx_t_174 = __pyx_v_xt;
__pyx_t_175 = __pyx_v_yt;
__pyx_t_176 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_174, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_175, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_176, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_172, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_173, __pyx_pybuffernd_col.diminfo[1].strides));
+8765: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8766: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8767:
+8768: elif seq == 6:
case 6:
/* … */
break;
default: break;
}
+8769: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L42_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L42_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L42_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8770: count = 0
__pyx_v_count = 0;
+8771: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8772: xt = np.random.randint(0, m - 1)
__pyx_t_36 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_40 = __Pyx_PyObject_GetAttrStr(__pyx_t_36, __pyx_n_s_random); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_40, __pyx_n_s_randint); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_44 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_36))) { __pyx_t_44 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_44)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_44); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_44) { __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_44); __pyx_t_44 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_40); __pyx_t_40 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8772, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_177 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_177 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8772, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_xt = __pyx_t_177;
+8773: yt = np.random.randint(0, n - 1)
__pyx_t_36 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_36, __pyx_n_s_random); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_randint); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_36))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_44 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_44, 0+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_44, 1+__pyx_t_28, __pyx_t_5); __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_44, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8773, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_177 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_6); if (unlikely((__pyx_t_177 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8773, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_yt = __pyx_t_177;
+8774: if I[xt, yt] == 0:
__pyx_t_177 = __pyx_v_xt;
__pyx_t_178 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_177, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_178, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8775: I[xt, yt] = p + count + 1
__pyx_t_179 = __pyx_v_xt;
__pyx_t_180 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8776: X[p + count] = xt
__pyx_t_181 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_181, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8777: Y[p + count] = yt
__pyx_t_182 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8778: a[p + count] = 1
__pyx_t_183 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_183, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8779: MAJ[p + count] = 1
__pyx_t_184 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_184, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8780: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8780, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8780, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8780, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_40 = __pyx_v_Adotfunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_40))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_40); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_40); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_40, function); __pyx_t_28 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8780, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_28, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_28, __pyx_int_1); __pyx_t_36 = 0; __pyx_t_44 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_40, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8780, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8780, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_185 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8781: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], 0)
__pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8781, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8781, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8781, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_186 = (__pyx_v_p + __pyx_v_count); __pyx_t_44 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_186, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8781, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_36 = __pyx_v_Rfunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_36))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8781, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_t_44); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_int_0); __pyx_t_40 = 0; __pyx_t_8 = 0; __pyx_t_5 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8781, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8781, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_187 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_187, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8782: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rval[p + count], adotVal[p + count])
__pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_188 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_188, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_189 = (__pyx_v_p + __pyx_v_count); __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_189, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_40 = __pyx_v_Thetafunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_40))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_40); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_40); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_40, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_t_8); __pyx_t_36 = 0; __pyx_t_26 = 0; __pyx_t_44 = 0; __pyx_t_5 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_40, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8782, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_190 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_190, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8783: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_191 = (__pyx_v_p + __pyx_v_count);
__pyx_t_192 = 0;
__pyx_t_193 = __pyx_v_xt;
__pyx_t_194 = __pyx_v_yt;
__pyx_t_195 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_193, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_194, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_195, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_col.diminfo[1].strides));
+8784: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_196 = (__pyx_v_p + __pyx_v_count);
__pyx_t_197 = 1;
__pyx_t_198 = __pyx_v_xt;
__pyx_t_199 = __pyx_v_yt;
__pyx_t_200 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_199, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_200, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_196, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_197, __pyx_pybuffernd_col.diminfo[1].strides));
+8785: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_201 = (__pyx_v_p + __pyx_v_count);
__pyx_t_202 = 2;
__pyx_t_203 = __pyx_v_xt;
__pyx_t_204 = __pyx_v_yt;
__pyx_t_205 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_204, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_205, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_202, __pyx_pybuffernd_col.diminfo[1].strides));
+8786: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8787: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8788:
8789: else:
+8790: if seq == 1:
/*else*/ {
/* … */
switch (__pyx_v_seq) {
/* … */
case 1:
/* … */
break;
+8791: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L49_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L49_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L49_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8792: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_40 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_40, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_44 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_44 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_44)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_44); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_44) { __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_44); __pyx_t_44 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_40); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 5+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_26, 6+__pyx_t_28, __pyx_int_1); __pyx_t_40 = 0; __pyx_t_8 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8792, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_26 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_26 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_26); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_26 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8792, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_206 = Py_TYPE(__pyx_t_5)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_7)) goto __pyx_L52_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_26 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_26)) goto __pyx_L52_unpacking_failed; __Pyx_GOTREF(__pyx_t_26); if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_5), 2) < 0) __PYX_ERR(0, 8792, __pyx_L1_error) __pyx_t_206 = NULL; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; goto __pyx_L53_unpacking_done; __pyx_L52_unpacking_failed:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_206 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8792, __pyx_L1_error) __pyx_L53_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8792, __pyx_L1_error) if (!(likely(((__pyx_t_26) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_26, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8792, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8792, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_26); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8792, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_26)); __pyx_t_26 = 0;
+8793: w = 0
__pyx_v_w = 0;
+8794: count = 0
__pyx_v_count = 0;
+8795: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8796: xt = xtrial[w]
__pyx_t_207 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8797: yt = ytrial[w]
__pyx_t_208 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8798: if I[xt, yt] == 0:
__pyx_t_209 = __pyx_v_xt;
__pyx_t_210 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_210, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8799: I[xt, yt] = p + count + 1
__pyx_t_211 = __pyx_v_xt;
__pyx_t_212 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_211, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_212, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8800: X[p + count] = xt
__pyx_t_213 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_213, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8801: Y[p + count] = yt
__pyx_t_214 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_214, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8802: a[p + count] = 1
__pyx_t_215 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8803: MAJ[p + count] = 1
__pyx_t_216 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_216, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8804: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_8 = __pyx_v_Thetafunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_44 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_44, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_44, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_44, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_44, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_44, 4+__pyx_t_28, __pyx_int_1); __pyx_t_26 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_44, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8804, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8804, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_217 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_217, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8805: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, Theta[p + count])
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8805, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8805, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8805, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_218 = (__pyx_v_p + __pyx_v_count); __pyx_t_7 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_218, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8805, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_26 = __pyx_v_Rfunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8805, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_t_7); __pyx_t_8 = 0; __pyx_t_44 = 0; __pyx_t_5 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8805, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8805, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_219 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_219, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8806: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], Rval[p + count])
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_220 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_220, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_221 = (__pyx_v_p + __pyx_v_count); __pyx_t_44 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_221, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_8 = __pyx_v_Adotfunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_t_44); __pyx_t_26 = 0; __pyx_t_36 = 0; __pyx_t_7 = 0; __pyx_t_5 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8806, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_222 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_222, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8807: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_223 = (__pyx_v_p + __pyx_v_count);
__pyx_t_224 = 0;
__pyx_t_225 = __pyx_v_xt;
__pyx_t_226 = __pyx_v_yt;
__pyx_t_227 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_225, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_226, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_227, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_224, __pyx_pybuffernd_col.diminfo[1].strides));
+8808: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_228 = (__pyx_v_p + __pyx_v_count);
__pyx_t_229 = 1;
__pyx_t_230 = __pyx_v_xt;
__pyx_t_231 = __pyx_v_yt;
__pyx_t_232 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_230, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_231, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_232, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_228, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_229, __pyx_pybuffernd_col.diminfo[1].strides));
+8809: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_233 = (__pyx_v_p + __pyx_v_count);
__pyx_t_234 = 2;
__pyx_t_235 = __pyx_v_xt;
__pyx_t_236 = __pyx_v_yt;
__pyx_t_237 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_236, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_233, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_234, __pyx_pybuffernd_col.diminfo[1].strides));
+8810: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8811: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L57;
}
+8812: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8813: else:
+8814: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_28 = 1;
}
}
__pyx_t_36 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_7); __pyx_t_7 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_8);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_44);
PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_t_44);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_36, 5+__pyx_t_28, __pyx_t_5);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_36, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_44 = 0;
__pyx_t_5 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8814, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_36 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_36 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_36);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_36 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8814, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_206 = Py_TYPE(__pyx_t_5)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L58_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_36 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_36)) goto __pyx_L58_unpacking_failed;
__Pyx_GOTREF(__pyx_t_36);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_5), 2) < 0) __PYX_ERR(0, 8814, __pyx_L1_error)
__pyx_t_206 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L59_unpacking_done;
__pyx_L58_unpacking_failed:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_206 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8814, __pyx_L1_error)
__pyx_L59_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8814, __pyx_L1_error)
if (!(likely(((__pyx_t_36) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_36, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8814, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8814, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_36);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8814, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_36));
__pyx_t_36 = 0;
+8815: w = 0
__pyx_v_w = 0;
}
__pyx_L57:;
}
+8816: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
+8817: elif seq == 2:
case 2:
/* … */
break;
+8818: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L61_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L61_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8819: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_36 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_36, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_36); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_7, 5+__pyx_t_28, __pyx_t_44); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 6+__pyx_t_28, __pyx_int_1); __pyx_t_36 = 0; __pyx_t_5 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8819, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_1 = PyList_GET_ITEM(sequence, 0); __pyx_t_7 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(__pyx_t_7); #else __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_44 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8819, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_206 = Py_TYPE(__pyx_t_44)->tp_iternext; index = 0; __pyx_t_1 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_1)) goto __pyx_L64_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); index = 1; __pyx_t_7 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_7)) goto __pyx_L64_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_44), 2) < 0) __PYX_ERR(0, 8819, __pyx_L1_error) __pyx_t_206 = NULL; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; goto __pyx_L65_unpacking_done; __pyx_L64_unpacking_failed:; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_206 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8819, __pyx_L1_error) __pyx_L65_unpacking_done:; } if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8819, __pyx_L1_error) if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8819, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8819, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8819, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0;
+8820: w = 0
__pyx_v_w = 0;
+8821: count = 0
__pyx_v_count = 0;
+8822: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8823: xt = xtrial[w]
__pyx_t_238 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_238, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8824: yt = ytrial[w]
__pyx_t_239 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_239, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8825: if I[xt, yt] == 0:
__pyx_t_240 = __pyx_v_xt;
__pyx_t_241 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_240, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_241, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8826: I[xt, yt] = p + count + 1
__pyx_t_242 = __pyx_v_xt;
__pyx_t_243 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_242, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_243, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8827: X[p + count] = xt
__pyx_t_244 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_244, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8828: Y[p + count] = yt
__pyx_t_245 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8829: a[p + count] = 1
__pyx_t_246 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_246, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8830: MAJ[p + count] = 1
__pyx_t_247 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8831: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, 1)
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8831, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8831, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8831, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_5 = __pyx_v_Thetafunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_28 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8831, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_28, __pyx_t_44); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_28, __pyx_int_1); __pyx_t_7 = 0; __pyx_t_1 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8831, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8831, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_248 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_248, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8832: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], 1)
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8832, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8832, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8832, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_249 = (__pyx_v_p + __pyx_v_count); __pyx_t_1 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8832, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_7 = __pyx_v_Adotfunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_7))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8832, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_t_1); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_int_1); __pyx_t_5 = 0; __pyx_t_8 = 0; __pyx_t_44 = 0; __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8832, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8832, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_250 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_250, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8833: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], Theta[p + count])
__pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_251 = (__pyx_v_p + __pyx_v_count); __pyx_t_44 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_251, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_252 = (__pyx_v_p + __pyx_v_count); __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_252, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_5 = __pyx_v_Rfunc; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_8); __pyx_t_7 = 0; __pyx_t_26 = 0; __pyx_t_1 = 0; __pyx_t_44 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8833, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_253 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_253, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8834: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_254 = (__pyx_v_p + __pyx_v_count);
__pyx_t_255 = 0;
__pyx_t_256 = __pyx_v_xt;
__pyx_t_257 = __pyx_v_yt;
__pyx_t_258 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_258, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_254, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_255, __pyx_pybuffernd_col.diminfo[1].strides));
+8835: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_259 = (__pyx_v_p + __pyx_v_count);
__pyx_t_260 = 1;
__pyx_t_261 = __pyx_v_xt;
__pyx_t_262 = __pyx_v_yt;
__pyx_t_263 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_261, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_262, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_col.diminfo[1].strides));
+8836: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_264 = (__pyx_v_p + __pyx_v_count);
__pyx_t_265 = 2;
__pyx_t_266 = __pyx_v_xt;
__pyx_t_267 = __pyx_v_yt;
__pyx_t_268 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_264, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_265, __pyx_pybuffernd_col.diminfo[1].strides));
+8837: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8838: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L69;
}
+8839: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8840: else:
+8841: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_40 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_40);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_1 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_40))) {
__pyx_t_1 = PyMethod_GET_SELF(__pyx_t_40);
if (likely(__pyx_t_1)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_40);
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_40, function);
__pyx_t_28 = 1;
}
}
__pyx_t_26 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
if (__pyx_t_1) {
__Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_1); __pyx_t_1 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_44);
PyTuple_SET_ITEM(__pyx_t_26, 5+__pyx_t_28, __pyx_t_44);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_26, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_8 = 0;
__pyx_t_44 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_40, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
__Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8841, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_40 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_26 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_40 = PyList_GET_ITEM(sequence, 0);
__pyx_t_26 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_40);
__Pyx_INCREF(__pyx_t_26);
#else
__pyx_t_40 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_40);
__pyx_t_26 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_44 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8841, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_206 = Py_TYPE(__pyx_t_44)->tp_iternext;
index = 0; __pyx_t_40 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_40)) goto __pyx_L70_unpacking_failed;
__Pyx_GOTREF(__pyx_t_40);
index = 1; __pyx_t_26 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_26)) goto __pyx_L70_unpacking_failed;
__Pyx_GOTREF(__pyx_t_26);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_44), 2) < 0) __PYX_ERR(0, 8841, __pyx_L1_error)
__pyx_t_206 = NULL;
__Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0;
goto __pyx_L71_unpacking_done;
__pyx_L70_unpacking_failed:;
__Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0;
__pyx_t_206 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8841, __pyx_L1_error)
__pyx_L71_unpacking_done:;
}
if (!(likely(((__pyx_t_40) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_40, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8841, __pyx_L1_error)
if (!(likely(((__pyx_t_26) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_26, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8841, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_40);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8841, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_40));
__pyx_t_40 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_26);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8841, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_26));
__pyx_t_26 = 0;
+8842: w = 0
__pyx_v_w = 0;
}
__pyx_L69:;
}
+8843: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
+8844: elif seq == 3:
case 3:
/* … */
break;
+8845: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L73_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L73_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L73_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8846: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_26 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_40 = __Pyx_PyObject_GetAttrStr(__pyx_t_26, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_40))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_40); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_40); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_40, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_26); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_28, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_1, 6+__pyx_t_28, __pyx_int_1); __pyx_t_26 = 0; __pyx_t_44 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_40, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8846, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_40 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_40 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_40 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8846, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_206 = Py_TYPE(__pyx_t_8)->tp_iternext; index = 0; __pyx_t_40 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_40)) goto __pyx_L76_unpacking_failed; __Pyx_GOTREF(__pyx_t_40); index = 1; __pyx_t_1 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_1)) goto __pyx_L76_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_8), 2) < 0) __PYX_ERR(0, 8846, __pyx_L1_error) __pyx_t_206 = NULL; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L77_unpacking_done; __pyx_L76_unpacking_failed:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_206 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8846, __pyx_L1_error) __pyx_L77_unpacking_done:; } if (!(likely(((__pyx_t_40) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_40, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8846, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8846, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_40); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8846, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_40)); __pyx_t_40 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8846, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+8847: w = 0
__pyx_v_w = 0;
+8848: count = 0
__pyx_v_count = 0;
+8849: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8850: xt = xtrial[w]
__pyx_t_269 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_269, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8851: yt = ytrial[w]
__pyx_t_270 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_270, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8852: if I[xt, yt] == 0:
__pyx_t_271 = __pyx_v_xt;
__pyx_t_272 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_271, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_272, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8853: I[xt, yt] = p + count + 1
__pyx_t_273 = __pyx_v_xt;
__pyx_t_274 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_273, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_274, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8854: X[p + count] = xt
__pyx_t_275 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_275, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8855: Y[p + count] = yt
__pyx_t_276 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_276, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8856: a[p + count] = 1
__pyx_t_277 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8857: MAJ[p + count] = 1
__pyx_t_278 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_278, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8858: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8858, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8858, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8858, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_44 = __pyx_v_Rfunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8858, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_28, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_28, __pyx_int_0); __pyx_t_1 = 0; __pyx_t_40 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8858, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8858, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_279 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_279, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8859: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rval[p + count], 1)
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_280 = (__pyx_v_p + __pyx_v_count); __pyx_t_40 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_280, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_1 = __pyx_v_Thetafunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_t_40); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_int_1); __pyx_t_44 = 0; __pyx_t_5 = 0; __pyx_t_8 = 0; __pyx_t_40 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8859, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8859, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_281 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_281, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8860: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, Theta[p + count], Rval[p + count])
__pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_282 = (__pyx_v_p + __pyx_v_count); __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_282, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_283 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_283, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_44 = __pyx_v_Adotfunc; __pyx_t_26 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_t_5); __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_40 = 0; __pyx_t_8 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8860, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_284 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_284, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8861: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_285 = (__pyx_v_p + __pyx_v_count);
__pyx_t_286 = 0;
__pyx_t_287 = __pyx_v_xt;
__pyx_t_288 = __pyx_v_yt;
__pyx_t_289 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_287, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_288, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_289, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_285, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_286, __pyx_pybuffernd_col.diminfo[1].strides));
+8862: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_290 = (__pyx_v_p + __pyx_v_count);
__pyx_t_291 = 1;
__pyx_t_292 = __pyx_v_xt;
__pyx_t_293 = __pyx_v_yt;
__pyx_t_294 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_292, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_290, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_291, __pyx_pybuffernd_col.diminfo[1].strides));
+8863: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_295 = (__pyx_v_p + __pyx_v_count);
__pyx_t_296 = 2;
__pyx_t_297 = __pyx_v_xt;
__pyx_t_298 = __pyx_v_yt;
__pyx_t_299 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_295, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_296, __pyx_pybuffernd_col.diminfo[1].strides));
+8864: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8865: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L81;
}
+8866: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8867: else:
+8868: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_44 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_44, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
__Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0;
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_40 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) {
__pyx_t_40 = PyMethod_GET_SELF(__pyx_t_36);
if (likely(__pyx_t_40)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36);
__Pyx_INCREF(__pyx_t_40);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_36, function);
__pyx_t_28 = 1;
}
}
__pyx_t_7 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
if (__pyx_t_40) {
__Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_40); __pyx_t_40 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_44);
PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_44);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_7, 5+__pyx_t_28, __pyx_t_8);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_7, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_44 = 0;
__pyx_t_5 = 0;
__pyx_t_8 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8868, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_36 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_36 = PyList_GET_ITEM(sequence, 0);
__pyx_t_7 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_36);
__Pyx_INCREF(__pyx_t_7);
#else
__pyx_t_36 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
__pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8868, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_206 = Py_TYPE(__pyx_t_8)->tp_iternext;
index = 0; __pyx_t_36 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_36)) goto __pyx_L82_unpacking_failed;
__Pyx_GOTREF(__pyx_t_36);
index = 1; __pyx_t_7 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L82_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_8), 2) < 0) __PYX_ERR(0, 8868, __pyx_L1_error)
__pyx_t_206 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L83_unpacking_done;
__pyx_L82_unpacking_failed:;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_206 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8868, __pyx_L1_error)
__pyx_L83_unpacking_done:;
}
if (!(likely(((__pyx_t_36) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_36, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8868, __pyx_L1_error)
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8868, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_36);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8868, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_36));
__pyx_t_36 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8868, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
+8869: w = 0
__pyx_v_w = 0;
}
__pyx_L81:;
}
+8870: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
+8871: elif seq == 4:
case 4:
/* … */
break;
+8872: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L85_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L85_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8873: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_44 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) { __pyx_t_44 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_44)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_44); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_44) { __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_44); __pyx_t_44 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_7); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 5+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_40, 6+__pyx_t_28, __pyx_int_1); __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8873, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_36 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_40 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_36 = PyList_GET_ITEM(sequence, 0); __pyx_t_40 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(__pyx_t_40); #else __pyx_t_36 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_40 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8873, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_206 = Py_TYPE(__pyx_t_5)->tp_iternext; index = 0; __pyx_t_36 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_36)) goto __pyx_L88_unpacking_failed; __Pyx_GOTREF(__pyx_t_36); index = 1; __pyx_t_40 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_40)) goto __pyx_L88_unpacking_failed; __Pyx_GOTREF(__pyx_t_40); if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_5), 2) < 0) __PYX_ERR(0, 8873, __pyx_L1_error) __pyx_t_206 = NULL; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; goto __pyx_L89_unpacking_done; __pyx_L88_unpacking_failed:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_206 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8873, __pyx_L1_error) __pyx_L89_unpacking_done:; } if (!(likely(((__pyx_t_36) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_36, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8873, __pyx_L1_error) if (!(likely(((__pyx_t_40) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_40, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8873, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_36); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8873, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_36)); __pyx_t_36 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_40); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8873, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_40)); __pyx_t_40 = 0;
+8874: w = 0
__pyx_v_w = 0;
+8875: count = 0
__pyx_v_count = 0;
+8876: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8877: xt = xtrial[w]
__pyx_t_300 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_300, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8878: yt = ytrial[w]
__pyx_t_301 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_301, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8879: if I[xt, yt] == 0:
__pyx_t_302 = __pyx_v_xt;
__pyx_t_303 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_303, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8880: I[xt, yt] = p + count + 1
__pyx_t_304 = __pyx_v_xt;
__pyx_t_305 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_304, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_305, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8881: X[p + count] = xt
__pyx_t_306 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_306, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8882: Y[p + count] = yt
__pyx_t_307 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_307, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8883: a[p + count] = 1
__pyx_t_308 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_308, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8884: MAJ[p + count] = 1
__pyx_t_309 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_309, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8885: Rval[p + count] = Rfunc(xt, yt, p + count + 1, 1, 0)
__pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8885, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8885, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8885, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_8 = __pyx_v_Rfunc; __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_44 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8885, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_44, 0+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_44, 1+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_44, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_44, 3+__pyx_t_28, __pyx_int_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_44, 4+__pyx_t_28, __pyx_int_0); __pyx_t_40 = 0; __pyx_t_36 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_44, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8885, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8885, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_310 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_310, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8886: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, Rval[p + count])
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8886, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8886, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8886, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_311 = (__pyx_v_p + __pyx_v_count); __pyx_t_36 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_311, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8886, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_40 = __pyx_v_Adotfunc; __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_40))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_40); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_40); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_40, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8886, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_5); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_t_36); __pyx_t_8 = 0; __pyx_t_44 = 0; __pyx_t_5 = 0; __pyx_t_36 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_40, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8886, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8886, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_312 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_312, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8887: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rval[p + count], adotVal[p + count])
__pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_313 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_313, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_314 = (__pyx_v_p + __pyx_v_count); __pyx_t_44 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_314, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_8 = __pyx_v_Thetafunc; __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_8))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_t_44); __pyx_t_40 = 0; __pyx_t_1 = 0; __pyx_t_36 = 0; __pyx_t_5 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8887, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_315 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_315, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8888: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_316 = (__pyx_v_p + __pyx_v_count);
__pyx_t_317 = 0;
__pyx_t_318 = __pyx_v_xt;
__pyx_t_319 = __pyx_v_yt;
__pyx_t_320 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_318, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_319, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_320, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_317, __pyx_pybuffernd_col.diminfo[1].strides));
+8889: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_321 = (__pyx_v_p + __pyx_v_count);
__pyx_t_322 = 1;
__pyx_t_323 = __pyx_v_xt;
__pyx_t_324 = __pyx_v_yt;
__pyx_t_325 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_322, __pyx_pybuffernd_col.diminfo[1].strides));
+8890: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_326 = (__pyx_v_p + __pyx_v_count);
__pyx_t_327 = 2;
__pyx_t_328 = __pyx_v_xt;
__pyx_t_329 = __pyx_v_yt;
__pyx_t_330 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_329, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_330, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_326, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_327, __pyx_pybuffernd_col.diminfo[1].strides));
+8891: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8892: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L93;
}
+8893: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8894: else:
+8895: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_36 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_26))) {
__pyx_t_36 = PyMethod_GET_SELF(__pyx_t_26);
if (likely(__pyx_t_36)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26);
__Pyx_INCREF(__pyx_t_36);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_26, function);
__pyx_t_28 = 1;
}
}
__pyx_t_1 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if (__pyx_t_36) {
__Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_36); __pyx_t_36 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_8);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_44);
PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_t_44);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_1, 5+__pyx_t_28, __pyx_t_5);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_1, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_44 = 0;
__pyx_t_5 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8895, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_26 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_26 = PyList_GET_ITEM(sequence, 0);
__pyx_t_1 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_26);
__Pyx_INCREF(__pyx_t_1);
#else
__pyx_t_26 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
__pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_5 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8895, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_206 = Py_TYPE(__pyx_t_5)->tp_iternext;
index = 0; __pyx_t_26 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_26)) goto __pyx_L94_unpacking_failed;
__Pyx_GOTREF(__pyx_t_26);
index = 1; __pyx_t_1 = __pyx_t_206(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L94_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_5), 2) < 0) __PYX_ERR(0, 8895, __pyx_L1_error)
__pyx_t_206 = NULL;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
goto __pyx_L95_unpacking_done;
__pyx_L94_unpacking_failed:;
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_206 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8895, __pyx_L1_error)
__pyx_L95_unpacking_done:;
}
if (!(likely(((__pyx_t_26) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_26, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8895, __pyx_L1_error)
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8895, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_26);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8895, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_26));
__pyx_t_26 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8895, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
+8896: w = 0
__pyx_v_w = 0;
}
__pyx_L93:;
}
+8897: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
+8898: elif seq == 5:
case 5:
/* … */
break;
+8899: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L97_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L97_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L97_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8900: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_8 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_26))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_8) { __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_8); __pyx_t_8 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_36, 5+__pyx_t_28, __pyx_t_44); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_36, 6+__pyx_t_28, __pyx_int_1); __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8900, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_26 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_36 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_26 = PyList_GET_ITEM(sequence, 0); __pyx_t_36 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(__pyx_t_36); #else __pyx_t_26 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_36 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_44 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8900, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_206 = Py_TYPE(__pyx_t_44)->tp_iternext; index = 0; __pyx_t_26 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_26)) goto __pyx_L100_unpacking_failed; __Pyx_GOTREF(__pyx_t_26); index = 1; __pyx_t_36 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_36)) goto __pyx_L100_unpacking_failed; __Pyx_GOTREF(__pyx_t_36); if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_44), 2) < 0) __PYX_ERR(0, 8900, __pyx_L1_error) __pyx_t_206 = NULL; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; goto __pyx_L101_unpacking_done; __pyx_L100_unpacking_failed:; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_206 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8900, __pyx_L1_error) __pyx_L101_unpacking_done:; } if (!(likely(((__pyx_t_26) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_26, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8900, __pyx_L1_error) if (!(likely(((__pyx_t_36) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_36, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8900, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_26); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8900, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_26)); __pyx_t_26 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_36); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8900, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_36)); __pyx_t_36 = 0;
+8901: w = 0
__pyx_v_w = 0;
+8902: count = 0
__pyx_v_count = 0;
+8903: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8904: xt = xtrial[w]
__pyx_t_331 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_331, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8905: yt = ytrial[w]
__pyx_t_332 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_332, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8906: if I[xt, yt] == 0:
__pyx_t_333 = __pyx_v_xt;
__pyx_t_334 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_333, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_334, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8907: I[xt, yt] = p + count + 1
__pyx_t_335 = __pyx_v_xt;
__pyx_t_336 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_335, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_336, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8908: X[p + count] = xt
__pyx_t_337 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_337, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8909: Y[p + count] = yt
__pyx_t_338 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_338, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8910: a[p + count] = 1
__pyx_t_339 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_339, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8911: MAJ[p + count] = 1
__pyx_t_340 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_340, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8912: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8912, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8912, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8912, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_5 = __pyx_v_Adotfunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_28 = 1; } } __pyx_t_8 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8912, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_8, 2+__pyx_t_28, __pyx_t_44); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_8, 3+__pyx_t_28, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_8, 4+__pyx_t_28, __pyx_int_1); __pyx_t_36 = 0; __pyx_t_26 = 0; __pyx_t_44 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8912, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8912, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_341 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_341, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8913: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, 1, adotVal[p + count])
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_342 = (__pyx_v_p + __pyx_v_count); __pyx_t_26 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_342, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_36 = __pyx_v_Thetafunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_36))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_40 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_44); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_1); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_26); __pyx_t_5 = 0; __pyx_t_8 = 0; __pyx_t_44 = 0; __pyx_t_26 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8913, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8913, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_343 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_343, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8914: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], Theta[p + count])
__pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_344 = (__pyx_v_p + __pyx_v_count); __pyx_t_44 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_344, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_345 = (__pyx_v_p + __pyx_v_count); __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_345, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_5 = __pyx_v_Rfunc; __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_5))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_28 = 1; } } __pyx_t_7 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_7, 0+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_7, 1+__pyx_t_28, __pyx_t_40); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 2+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_7, 3+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 4+__pyx_t_28, __pyx_t_8); __pyx_t_36 = 0; __pyx_t_40 = 0; __pyx_t_26 = 0; __pyx_t_44 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8914, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_346 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8915: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_347 = (__pyx_v_p + __pyx_v_count);
__pyx_t_348 = 0;
__pyx_t_349 = __pyx_v_xt;
__pyx_t_350 = __pyx_v_yt;
__pyx_t_351 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_349, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_350, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_347, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_348, __pyx_pybuffernd_col.diminfo[1].strides));
+8916: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_352 = (__pyx_v_p + __pyx_v_count);
__pyx_t_353 = 1;
__pyx_t_354 = __pyx_v_xt;
__pyx_t_355 = __pyx_v_yt;
__pyx_t_356 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_355, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_356, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_352, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_353, __pyx_pybuffernd_col.diminfo[1].strides));
+8917: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_357 = (__pyx_v_p + __pyx_v_count);
__pyx_t_358 = 2;
__pyx_t_359 = __pyx_v_xt;
__pyx_t_360 = __pyx_v_yt;
__pyx_t_361 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_359, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_360, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_361, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_357, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_358, __pyx_pybuffernd_col.diminfo[1].strides));
+8918: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8919: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L105;
}
+8920: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8921: else:
+8922: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_26 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) {
__pyx_t_26 = PyMethod_GET_SELF(__pyx_t_7);
if (likely(__pyx_t_26)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7);
__Pyx_INCREF(__pyx_t_26);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_7, function);
__pyx_t_28 = 1;
}
}
__pyx_t_40 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_40);
if (__pyx_t_26) {
__Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_40, 0, __pyx_t_26); __pyx_t_26 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_40, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_40, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_40, 2+__pyx_t_28, __pyx_t_5);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_40, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_40, 4+__pyx_t_28, __pyx_t_8);
__Pyx_GIVEREF(__pyx_t_44);
PyTuple_SET_ITEM(__pyx_t_40, 5+__pyx_t_28, __pyx_t_44);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_40, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_5 = 0;
__pyx_t_8 = 0;
__pyx_t_44 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_40, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0;
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8922, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_40 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_7 = PyList_GET_ITEM(sequence, 0);
__pyx_t_40 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(__pyx_t_40);
#else
__pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_7);
__pyx_t_40 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_40);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_44 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8922, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_206 = Py_TYPE(__pyx_t_44)->tp_iternext;
index = 0; __pyx_t_7 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_7)) goto __pyx_L106_unpacking_failed;
__Pyx_GOTREF(__pyx_t_7);
index = 1; __pyx_t_40 = __pyx_t_206(__pyx_t_44); if (unlikely(!__pyx_t_40)) goto __pyx_L106_unpacking_failed;
__Pyx_GOTREF(__pyx_t_40);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_44), 2) < 0) __PYX_ERR(0, 8922, __pyx_L1_error)
__pyx_t_206 = NULL;
__Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0;
goto __pyx_L107_unpacking_done;
__pyx_L106_unpacking_failed:;
__Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0;
__pyx_t_206 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8922, __pyx_L1_error)
__pyx_L107_unpacking_done:;
}
if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8922, __pyx_L1_error)
if (!(likely(((__pyx_t_40) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_40, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8922, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_7);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8922, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_7));
__pyx_t_7 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_40);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8922, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_40));
__pyx_t_40 = 0;
+8923: w = 0
__pyx_v_w = 0;
}
__pyx_L105:;
}
+8924: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
+8925: elif seq == 6:
case 6:
/* … */
break;
default: break;
}
}
__pyx_L5:;
+8926: if dp > 0 and dp <= MN - nnz and nnz < fstop * MN:
__pyx_t_27 = ((__pyx_v_dp > 0) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L109_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_dp <= (__pyx_v_MN - __pyx_v_nnz)) != 0);
if (__pyx_t_27) {
} else {
__pyx_t_25 = __pyx_t_27;
goto __pyx_L109_bool_binop_done;
}
__pyx_t_27 = ((__pyx_v_nnz < (__pyx_v_fstop * __pyx_v_MN)) != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L109_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8927: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
__pyx_t_40 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_40, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_40); __pyx_t_40 = 0; __pyx_t_40 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_40)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_40); __pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_5 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_5)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_5) { __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_5); __pyx_t_5 = NULL; } __Pyx_INCREF(__pyx_v_pdelNxy); __Pyx_GIVEREF(__pyx_v_pdelNxy); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_v_pdelNxy); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_26, 2+__pyx_t_28, __pyx_t_40); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_26, 3+__pyx_t_28, __pyx_int_0); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_26, 4+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 5+__pyx_t_28, __pyx_t_8); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_26, 6+__pyx_t_28, __pyx_int_1); __pyx_t_40 = 0; __pyx_t_44 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_26, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { PyObject* sequence = __pyx_t_6; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 8927, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_26 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_26 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_26); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_26 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); #endif __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } else { Py_ssize_t index = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8927, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_206 = Py_TYPE(__pyx_t_8)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L112_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_26 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_26)) goto __pyx_L112_unpacking_failed; __Pyx_GOTREF(__pyx_t_26); if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_8), 2) < 0) __PYX_ERR(0, 8927, __pyx_L1_error) __pyx_t_206 = NULL; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L113_unpacking_done; __pyx_L112_unpacking_failed:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_206 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 8927, __pyx_L1_error) __pyx_L113_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8927, __pyx_L1_error) if (!(likely(((__pyx_t_26) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_26, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8927, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21); } } __pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8927, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_11 = ((PyArrayObject *)__pyx_t_26); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer); __pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_4 < 0)) { PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23); } } __pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8927, __pyx_L1_error) } __pyx_t_11 = 0; __Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_26)); __pyx_t_26 = 0;
+8928: w = 0
__pyx_v_w = 0;
+8929: count = 0
__pyx_v_count = 0;
+8930: while count < dp:
while (1) {
__pyx_t_25 = ((__pyx_v_count < __pyx_v_dp) != 0);
if (!__pyx_t_25) break;
+8931: xt = xtrial[w]
__pyx_t_362 = __pyx_v_w;
__pyx_v_xt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.buf, __pyx_t_362, __pyx_pybuffernd_xtrial.diminfo[0].strides));
+8932: yt = ytrial[w]
__pyx_t_363 = __pyx_v_w;
__pyx_v_yt = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.buf, __pyx_t_363, __pyx_pybuffernd_ytrial.diminfo[0].strides));
+8933: if I[xt, yt] == 0:
__pyx_t_364 = __pyx_v_xt;
__pyx_t_365 = __pyx_v_yt;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_364, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_365, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8934: I[xt, yt] = p + count + 1
__pyx_t_366 = __pyx_v_xt;
__pyx_t_367 = __pyx_v_yt;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_366, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_367, __pyx_pybuffernd_I.diminfo[1].strides) = ((__pyx_v_p + __pyx_v_count) + 1);
+8935: X[p + count] = xt
__pyx_t_368 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_368, __pyx_pybuffernd_X.diminfo[0].strides) = __pyx_v_xt;
+8936: Y[p + count] = yt
__pyx_t_369 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_369, __pyx_pybuffernd_Y.diminfo[0].strides) = __pyx_v_yt;
+8937: a[p + count] = 1
__pyx_t_370 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_370, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+8938: MAJ[p + count] = 1
__pyx_t_371 = (__pyx_v_p + __pyx_v_count);
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_371, __pyx_pybuffernd_MAJ.diminfo[0].strides) = 1.0;
+8939: adotVal[p + count] = Adotfunc(xt, yt, p + count + 1, 0, 1)
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8939, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8939, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8939, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_INCREF(__pyx_v_Adotfunc); __pyx_t_44 = __pyx_v_Adotfunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_5 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8939, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_5, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_5, 1+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 2+__pyx_t_28, __pyx_t_8); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_5, 3+__pyx_t_28, __pyx_int_0); __Pyx_INCREF(__pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_t_5, 4+__pyx_t_28, __pyx_int_1); __pyx_t_26 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8939, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8939, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_372 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_372, __pyx_pybuffernd_adotVal.diminfo[0].strides) = __pyx_t_37;
+8940: Rval[p + count] = Rfunc(xt, yt, p + count + 1, adotVal[p + count], 0)
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_373 = (__pyx_v_p + __pyx_v_count); __pyx_t_7 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_373, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_INCREF(__pyx_v_Rfunc); __pyx_t_26 = __pyx_v_Rfunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_36 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_t_44); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_t_7); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_int_0); __pyx_t_44 = 0; __pyx_t_5 = 0; __pyx_t_8 = 0; __pyx_t_7 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8940, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8940, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_374 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_Rval.diminfo[0].strides) = __pyx_t_37;
+8941: Theta[p + count] = Thetafunc(xt, yt, p + count + 1, Rval[p + count], adotVal[p + count])
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_xt); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_36 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_yt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(((__pyx_v_p + __pyx_v_count) + 1)); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_375 = (__pyx_v_p + __pyx_v_count); __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_375, __pyx_pybuffernd_Rval.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_376 = (__pyx_v_p + __pyx_v_count); __pyx_t_5 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_376, __pyx_pybuffernd_adotVal.diminfo[0].strides))); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_v_Thetafunc); __pyx_t_44 = __pyx_v_Thetafunc; __pyx_t_40 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_44))) { __pyx_t_40 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_40)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_40); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(5+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_40) { __Pyx_GIVEREF(__pyx_t_40); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_40); __pyx_t_40 = NULL; } __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_36); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 4+__pyx_t_28, __pyx_t_5); __pyx_t_26 = 0; __pyx_t_36 = 0; __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_5 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_37 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_37 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 8941, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_377 = (__pyx_v_p + __pyx_v_count); *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_377, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_37;
+8942: Col[xt, yt, 2] = col[p + count, 0]
__pyx_t_378 = (__pyx_v_p + __pyx_v_count);
__pyx_t_379 = 0;
__pyx_t_380 = __pyx_v_xt;
__pyx_t_381 = __pyx_v_yt;
__pyx_t_382 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_378, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_379, __pyx_pybuffernd_col.diminfo[1].strides));
+8943: Col[xt, yt, 1] = col[p + count, 1]
__pyx_t_383 = (__pyx_v_p + __pyx_v_count);
__pyx_t_384 = 1;
__pyx_t_385 = __pyx_v_xt;
__pyx_t_386 = __pyx_v_yt;
__pyx_t_387 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_385, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_386, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_387, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_383, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_384, __pyx_pybuffernd_col.diminfo[1].strides));
+8944: Col[xt, yt, 0] = col[p + count, 2]
__pyx_t_388 = (__pyx_v_p + __pyx_v_count);
__pyx_t_389 = 2;
__pyx_t_390 = __pyx_v_xt;
__pyx_t_391 = __pyx_v_yt;
__pyx_t_392 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_390, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_391, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_392, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_389, __pyx_pybuffernd_col.diminfo[1].strides));
+8945: count = count + 1
__pyx_v_count = (__pyx_v_count + 1);
+8946: if w < dp - 1:
__pyx_t_25 = ((__pyx_v_w < (__pyx_v_dp - 1)) != 0);
if (__pyx_t_25) {
/* … */
goto __pyx_L117;
}
+8947: w = w + 1
__pyx_v_w = (__pyx_v_w + 1);
8948: else:
+8949: xtrial, ytrial = met.MH2D(pdelNxy, 0, m - 1, 0, n - 1, dp, 1)
/*else*/ {
__pyx_t_44 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_44, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0;
__pyx_t_44 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m - 1)); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_44);
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_n - 1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_5);
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_dp); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_7 = NULL;
__pyx_t_28 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_1);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_1, function);
__pyx_t_28 = 1;
}
}
__pyx_t_36 = PyTuple_New(7+__pyx_t_28); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_36, 0, __pyx_t_7); __pyx_t_7 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_36, 0+__pyx_t_28, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_36, 1+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_44);
PyTuple_SET_ITEM(__pyx_t_36, 2+__pyx_t_28, __pyx_t_44);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_36, 3+__pyx_t_28, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_5);
PyTuple_SET_ITEM(__pyx_t_36, 4+__pyx_t_28, __pyx_t_5);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_36, 5+__pyx_t_28, __pyx_t_8);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_36, 6+__pyx_t_28, __pyx_int_1);
__pyx_t_44 = 0;
__pyx_t_5 = 0;
__pyx_t_8 = 0;
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_36, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0;
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
PyObject* sequence = __pyx_t_6;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 8949, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_36 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_1 = PyList_GET_ITEM(sequence, 0);
__pyx_t_36 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_1);
__Pyx_INCREF(__pyx_t_36);
#else
__pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__pyx_t_36 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_36);
#endif
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_8 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8949, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_206 = Py_TYPE(__pyx_t_8)->tp_iternext;
index = 0; __pyx_t_1 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_1)) goto __pyx_L118_unpacking_failed;
__Pyx_GOTREF(__pyx_t_1);
index = 1; __pyx_t_36 = __pyx_t_206(__pyx_t_8); if (unlikely(!__pyx_t_36)) goto __pyx_L118_unpacking_failed;
__Pyx_GOTREF(__pyx_t_36);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_206(__pyx_t_8), 2) < 0) __PYX_ERR(0, 8949, __pyx_L1_error)
__pyx_t_206 = NULL;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
goto __pyx_L119_unpacking_done;
__pyx_L118_unpacking_failed:;
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_206 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 8949, __pyx_L1_error)
__pyx_L119_unpacking_done:;
}
if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8949, __pyx_L1_error)
if (!(likely(((__pyx_t_36) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_36, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 8949, __pyx_L1_error)
__pyx_t_10 = ((PyArrayObject *)__pyx_t_1);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_23, &__pyx_t_22, &__pyx_t_21);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_xtrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_xtrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_23); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_21);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_23, __pyx_t_22, __pyx_t_21);
}
}
__pyx_pybuffernd_xtrial.diminfo[0].strides = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_xtrial.diminfo[0].shape = __pyx_pybuffernd_xtrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8949, __pyx_L1_error)
}
__pyx_t_10 = 0;
__Pyx_DECREF_SET(__pyx_v_xtrial, ((PyArrayObject *)__pyx_t_1));
__pyx_t_1 = 0;
__pyx_t_11 = ((PyArrayObject *)__pyx_t_36);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer);
__pyx_t_4 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_4 < 0)) {
PyErr_Fetch(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ytrial.rcbuffer->pybuffer, (PyObject*)__pyx_v_ytrial, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_21); Py_XDECREF(__pyx_t_22); Py_XDECREF(__pyx_t_23);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_21, __pyx_t_22, __pyx_t_23);
}
}
__pyx_pybuffernd_ytrial.diminfo[0].strides = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ytrial.diminfo[0].shape = __pyx_pybuffernd_ytrial.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(0, 8949, __pyx_L1_error)
}
__pyx_t_11 = 0;
__Pyx_DECREF_SET(__pyx_v_ytrial, ((PyArrayObject *)__pyx_t_36));
__pyx_t_36 = 0;
+8950: w = 0
__pyx_v_w = 0;
}
__pyx_L117:;
}
+8951: p = p + dp
__pyx_v_p = (__pyx_v_p + __pyx_v_dp);
8952:
8953:
+8954: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+8955: countim = countim + 1
__pyx_v_countim = (__pyx_v_countim + 1);
8956:
8957:
+8958: adotValmax = 0
__pyx_v_adotValmax = 0.0;
+8959: for i in range(0, p):
__pyx_t_393 = __pyx_v_p;
for (__pyx_t_394 = 0; __pyx_t_394 < __pyx_t_393; __pyx_t_394+=1) {
__pyx_v_i = __pyx_t_394;
+8960: if a[i] == 1:
__pyx_t_395 = __pyx_v_i;
__pyx_t_25 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_395, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8961: tmp = adotVal[i]
__pyx_t_396 = __pyx_v_i;
__pyx_v_tmp = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_396, __pyx_pybuffernd_adotVal.diminfo[0].strides));
+8962: if tmp > adotValmax:
__pyx_t_25 = ((__pyx_v_tmp > __pyx_v_adotValmax) != 0);
if (__pyx_t_25) {
/* … */
}
+8963: adotValmax = tmp
__pyx_v_adotValmax = __pyx_v_tmp;
8964:
+8965: for k in range(0, p):
__pyx_t_393 = __pyx_v_p;
for (__pyx_t_394 = 0; __pyx_t_394 < __pyx_t_393; __pyx_t_394+=1) {
__pyx_v_k = __pyx_t_394;
+8966: if a[k] == 1:
__pyx_t_397 = __pyx_v_k;
__pyx_t_25 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_397, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_25) {
/* … */
}
}
+8967: a[k] = 0
__pyx_t_398 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_398, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+8968: xo = X[k]
__pyx_t_399 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_399, __pyx_pybuffernd_X.diminfo[0].strides));
+8969: yo = Y[k]
__pyx_t_400 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_400, __pyx_pybuffernd_Y.diminfo[0].strides));
+8970: Io = I[xo, yo]
__pyx_t_401 = __pyx_v_xo;
__pyx_t_402 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_401, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_402, __pyx_pybuffernd_I.diminfo[1].strides));
+8971: theta = Theta[k]
__pyx_t_403 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_403, __pyx_pybuffernd_Theta.diminfo[0].strides));
+8972: c = math.cos(theta)
__pyx_t_36 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8972, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_36, __pyx_n_s_cos); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8972, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8972, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_8) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_36); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8972, __pyx_L1_error) __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_5 = PyTuple_New(1+1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8972, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_5, 0+1, __pyx_t_36); __pyx_t_36 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8972, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_6); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8972, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_v_c = __pyx_t_3;
+8973: s = -math.sin(theta)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sin); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_36 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_5))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_5); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); } } if (!__pyx_t_36) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_36); __pyx_t_36 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Negative(__pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_5); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 8973, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_s = __pyx_t_3;
+8974: dr = adotVal[k] / adotValmax
__pyx_t_404 = __pyx_v_k;
__pyx_v_dr = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_adotVal.rcbuffer->pybuffer.buf, __pyx_t_404, __pyx_pybuffernd_adotVal.diminfo[0].strides)) / ((__pyx_t_5numpy_float64_t)__pyx_v_adotValmax));
+8975: MAJ[k] = MAJ[k] + dr
__pyx_t_405 = __pyx_v_k;
__pyx_t_406 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_406, __pyx_pybuffernd_MAJ.diminfo[0].strides) = ((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_405, __pyx_pybuffernd_MAJ.diminfo[0].strides)) + __pyx_v_dr);
+8976: Maj = MAJ[k]
__pyx_t_407 = __pyx_v_k;
__pyx_v_Maj = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_MAJ.rcbuffer->pybuffer.buf, __pyx_t_407, __pyx_pybuffernd_MAJ.diminfo[0].strides));
+8977: Min = Maj / Rval[k]
__pyx_t_408 = __pyx_v_k;
__pyx_v_Min = (((__pyx_t_5numpy_float64_t)__pyx_v_Maj) / (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rval.rcbuffer->pybuffer.buf, __pyx_t_408, __pyx_pybuffernd_Rval.diminfo[0].strides)));
+8978: delX = math.ceil(math.sqrt((Maj * c) ** 2 + (Min * s) ** 2))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ceil); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_c), 2.0) + powf((__pyx_v_Min * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_44 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) { __pyx_t_44 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_44)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_44); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); } } if (!__pyx_t_44) { __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_36, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_6); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_44); __pyx_t_44 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_36) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_6); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_36); __pyx_t_36 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_409 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_409 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8978, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_delX = __pyx_t_409;
+8979: delY = math.ceil(math.sqrt((Maj * s) ** 2 + (Min * c) ** 2))
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble((powf((__pyx_v_Maj * __pyx_v_s), 2.0) + powf((__pyx_v_Min * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); } } if (!__pyx_t_1) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_36, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_44 = PyTuple_New(1+1); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_44, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_44, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; } __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_36) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_44 = PyTuple_New(1+1); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_44, 0, __pyx_t_36); __pyx_t_36 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_44, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_44, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_409 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_409 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 8979, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_delY = __pyx_t_409;
+8980: red = col[k, 0]
__pyx_t_409 = __pyx_v_k;
__pyx_t_410 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_409, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_410, __pyx_pybuffernd_col.diminfo[1].strides));
+8981: green = col[k, 1]
__pyx_t_411 = __pyx_v_k;
__pyx_t_412 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_411, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_412, __pyx_pybuffernd_col.diminfo[1].strides));
+8982: blue = col[k, 2]
__pyx_t_413 = __pyx_v_k;
__pyx_t_414 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_413, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_414, __pyx_pybuffernd_col.diminfo[1].strides));
8983:
+8984: for deli in range(0, delX + 1):
__pyx_t_415 = (__pyx_v_delX + 1);
for (__pyx_t_416 = 0; __pyx_t_416 < __pyx_t_415; __pyx_t_416+=1) {
__pyx_v_deli = __pyx_t_416;
+8985: for delj in range(0, delY + 1):
__pyx_t_417 = (__pyx_v_delY + 1);
for (__pyx_t_418 = 0; __pyx_t_418 < __pyx_t_417; __pyx_t_418+=1) {
__pyx_v_delj = __pyx_t_418;
+8986: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_25 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_25) {
/* … */
}
}
}
8987:
+8988: i, j = xo + deli, yo + delj
__pyx_t_419 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_420 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_419;
__pyx_v_j = __pyx_t_420;
+8989: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_27 = (0 <= __pyx_v_i);
if (__pyx_t_27) {
__pyx_t_27 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_421 = (__pyx_t_27 != 0);
if (__pyx_t_421) {
} else {
__pyx_t_25 = __pyx_t_421;
goto __pyx_L133_bool_binop_done;
}
__pyx_t_421 = (0 <= __pyx_v_j);
if (__pyx_t_421) {
__pyx_t_421 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_27 = (__pyx_t_421 != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L133_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+8990: if I[i, j] == 0:
__pyx_t_420 = __pyx_v_i;
__pyx_t_419 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_420, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_419, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8991: for dum in range(1):
for (__pyx_t_422 = 0; __pyx_t_422 < 1; __pyx_t_422+=1) {
__pyx_v_dum = __pyx_t_422;
8992:
+8993: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+8994: if I[i - 1, j] == Io:
__pyx_t_423 = (__pyx_v_i - 1);
__pyx_t_424 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_423, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_424, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+8995: I[i, j] = Io
__pyx_t_425 = __pyx_v_i;
__pyx_t_426 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_425, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_426, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+8996: Col[i, j, 2] = red
__pyx_t_427 = __pyx_v_i;
__pyx_t_428 = __pyx_v_j;
__pyx_t_429 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_427, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_428, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_429, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+8997: Col[i, j, 1] = green
__pyx_t_430 = __pyx_v_i;
__pyx_t_431 = __pyx_v_j;
__pyx_t_432 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_430, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_431, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_432, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+8998: Col[i, j, 0] = blue
__pyx_t_433 = __pyx_v_i;
__pyx_t_434 = __pyx_v_j;
__pyx_t_435 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_433, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_434, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_435, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+8999: a[k] = 1
__pyx_t_436 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_436, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9000: break
goto __pyx_L137_break;
+9001: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9002: if I[i, j - 1] == Io:
__pyx_t_437 = __pyx_v_i;
__pyx_t_438 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_437, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_438, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9003: I[i, j] = Io
__pyx_t_439 = __pyx_v_i;
__pyx_t_440 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_439, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_440, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9004: Col[i, j, 2] = red
__pyx_t_441 = __pyx_v_i;
__pyx_t_442 = __pyx_v_j;
__pyx_t_443 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_443, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9005: Col[i, j, 1] = green
__pyx_t_444 = __pyx_v_i;
__pyx_t_445 = __pyx_v_j;
__pyx_t_446 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_444, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_445, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_446, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9006: Col[i, j, 0] = blue
__pyx_t_447 = __pyx_v_i;
__pyx_t_448 = __pyx_v_j;
__pyx_t_449 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_447, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_448, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_449, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9007: a[k] = 1
__pyx_t_450 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_450, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9008: break
goto __pyx_L137_break;
9009:
+9010: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+9011: if I[i, j + 1] == Io:
__pyx_t_451 = __pyx_v_i;
__pyx_t_452 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_451, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_452, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9012: I[i, j] = Io
__pyx_t_453 = __pyx_v_i;
__pyx_t_454 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_453, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_454, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9013: Col[i, j, 2] = red
__pyx_t_455 = __pyx_v_i;
__pyx_t_456 = __pyx_v_j;
__pyx_t_457 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_457, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9014: Col[i, j, 1] = green
__pyx_t_458 = __pyx_v_i;
__pyx_t_459 = __pyx_v_j;
__pyx_t_460 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_458, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_459, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_460, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9015: Col[i, j, 0] = blue
__pyx_t_461 = __pyx_v_i;
__pyx_t_462 = __pyx_v_j;
__pyx_t_463 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_461, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_462, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_463, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9016: a[k] = 1
__pyx_t_464 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_464, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9017: break
goto __pyx_L137_break;
9018:
9019:
+9020: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L137_break:;
+9021: if I[i + 1, j] == Io:
__pyx_t_465 = (__pyx_v_i + 1);
__pyx_t_466 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_465, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_466, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9022: I[i, j] = Io
__pyx_t_467 = __pyx_v_i;
__pyx_t_468 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_467, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_468, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9023: Col[i, j, 2] = red
__pyx_t_469 = __pyx_v_i;
__pyx_t_470 = __pyx_v_j;
__pyx_t_471 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_469, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_470, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_471, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9024: Col[i, j, 1] = green
__pyx_t_472 = __pyx_v_i;
__pyx_t_473 = __pyx_v_j;
__pyx_t_474 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_472, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_473, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_474, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9025: Col[i, j, 0] = blue
__pyx_t_475 = __pyx_v_i;
__pyx_t_476 = __pyx_v_j;
__pyx_t_477 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_475, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_476, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_477, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9026: a[k] = 1
__pyx_t_478 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_478, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9027: break
goto __pyx_L137_break;
9028:
9029:
+9030: i, j = xo - deli, yo - delj
__pyx_t_422 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_479 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_422;
__pyx_v_j = __pyx_t_479;
+9031: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_27 = (0 <= __pyx_v_i);
if (__pyx_t_27) {
__pyx_t_27 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_421 = (__pyx_t_27 != 0);
if (__pyx_t_421) {
} else {
__pyx_t_25 = __pyx_t_421;
goto __pyx_L147_bool_binop_done;
}
__pyx_t_421 = (0 <= __pyx_v_j);
if (__pyx_t_421) {
__pyx_t_421 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_27 = (__pyx_t_421 != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L147_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+9032: if I[i, j] == 0:
__pyx_t_479 = __pyx_v_i;
__pyx_t_422 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_479, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_422, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9033: for dum in range(1):
for (__pyx_t_480 = 0; __pyx_t_480 < 1; __pyx_t_480+=1) {
__pyx_v_dum = __pyx_t_480;
9034:
+9035: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9036: if I[i - 1, j] == Io:
__pyx_t_481 = (__pyx_v_i - 1);
__pyx_t_482 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_481, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_482, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9037: I[i, j] = Io
__pyx_t_483 = __pyx_v_i;
__pyx_t_484 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_483, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_484, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9038: Col[i, j, 2] = red
__pyx_t_485 = __pyx_v_i;
__pyx_t_486 = __pyx_v_j;
__pyx_t_487 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_485, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_486, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_487, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9039: Col[i, j, 1] = green
__pyx_t_488 = __pyx_v_i;
__pyx_t_489 = __pyx_v_j;
__pyx_t_490 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_488, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_489, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_490, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9040: Col[i, j, 0] = blue
__pyx_t_491 = __pyx_v_i;
__pyx_t_492 = __pyx_v_j;
__pyx_t_493 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_491, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_492, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_493, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9041: a[k] = 1
__pyx_t_494 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_494, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9042: break
goto __pyx_L151_break;
+9043: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9044: if I[i, j - 1] == Io:
__pyx_t_495 = __pyx_v_i;
__pyx_t_496 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_495, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_496, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9045: I[i, j] = Io
__pyx_t_497 = __pyx_v_i;
__pyx_t_498 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_497, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_498, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9046: Col[i, j, 2] = red
__pyx_t_499 = __pyx_v_i;
__pyx_t_500 = __pyx_v_j;
__pyx_t_501 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_499, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_500, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_501, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9047: Col[i, j, 1] = green
__pyx_t_502 = __pyx_v_i;
__pyx_t_503 = __pyx_v_j;
__pyx_t_504 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_502, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_503, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_504, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9048: Col[i, j, 0] = blue
__pyx_t_505 = __pyx_v_i;
__pyx_t_506 = __pyx_v_j;
__pyx_t_507 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_505, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_506, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_507, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9049: a[k] = 1
__pyx_t_508 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_508, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9050: break
goto __pyx_L151_break;
9051:
+9052: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+9053: if I[i, j + 1] == Io:
__pyx_t_509 = __pyx_v_i;
__pyx_t_510 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_509, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_510, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9054: I[i, j] = Io
__pyx_t_511 = __pyx_v_i;
__pyx_t_512 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_511, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_512, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9055: Col[i, j, 2] = red
__pyx_t_513 = __pyx_v_i;
__pyx_t_514 = __pyx_v_j;
__pyx_t_515 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_513, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_514, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_515, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9056: Col[i, j, 1] = green
__pyx_t_516 = __pyx_v_i;
__pyx_t_517 = __pyx_v_j;
__pyx_t_518 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_516, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_517, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_518, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9057: Col[i, j, 0] = blue
__pyx_t_519 = __pyx_v_i;
__pyx_t_520 = __pyx_v_j;
__pyx_t_521 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_519, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_520, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_521, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9058: a[k] = 1
__pyx_t_522 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_522, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9059: break
goto __pyx_L151_break;
9060:
9061:
+9062: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L151_break:;
+9063: if I[i + 1, j] == Io:
__pyx_t_523 = (__pyx_v_i + 1);
__pyx_t_524 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_523, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_524, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9064: I[i, j] = Io
__pyx_t_525 = __pyx_v_i;
__pyx_t_526 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_525, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_526, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9065: Col[i, j, 2] = red
__pyx_t_527 = __pyx_v_i;
__pyx_t_528 = __pyx_v_j;
__pyx_t_529 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_527, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_528, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_529, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9066: Col[i, j, 1] = green
__pyx_t_530 = __pyx_v_i;
__pyx_t_531 = __pyx_v_j;
__pyx_t_532 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_530, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_531, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_532, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9067: Col[i, j, 0] = blue
__pyx_t_533 = __pyx_v_i;
__pyx_t_534 = __pyx_v_j;
__pyx_t_535 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_533, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_534, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_535, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9068: a[k] = 1
__pyx_t_536 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_536, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9069: break
goto __pyx_L151_break;
9070:
+9071: for deli in range(0, -delX - 1, -1):
__pyx_t_415 = ((-__pyx_v_delX) - 1);
for (__pyx_t_416 = 0; __pyx_t_416 > __pyx_t_415; __pyx_t_416-=1) {
__pyx_v_deli = __pyx_t_416;
+9072: for delj in range(0, delY + 1):
__pyx_t_417 = (__pyx_v_delY + 1);
for (__pyx_t_418 = 0; __pyx_t_418 < __pyx_t_417; __pyx_t_418+=1) {
__pyx_v_delj = __pyx_t_418;
+9073: if ((deli * c - delj * s) / Maj) ** 2 + ((deli * s + delj * c) / Min) ** 2 < 1:
__pyx_t_25 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_Maj), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_Min), 2.0)) < 1.0) != 0);
if (__pyx_t_25) {
/* … */
}
}
}
9074:
+9075: i, j = xo + deli, yo + delj
__pyx_t_480 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_537 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_480;
__pyx_v_j = __pyx_t_537;
+9076: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_27 = (0 <= __pyx_v_i);
if (__pyx_t_27) {
__pyx_t_27 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_421 = (__pyx_t_27 != 0);
if (__pyx_t_421) {
} else {
__pyx_t_25 = __pyx_t_421;
goto __pyx_L166_bool_binop_done;
}
__pyx_t_421 = (0 <= __pyx_v_j);
if (__pyx_t_421) {
__pyx_t_421 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_27 = (__pyx_t_421 != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L166_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+9077: if I[i, j] == 0:
__pyx_t_537 = __pyx_v_i;
__pyx_t_480 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_537, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_480, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9078: for dum in range(1):
for (__pyx_t_538 = 0; __pyx_t_538 < 1; __pyx_t_538+=1) {
__pyx_v_dum = __pyx_t_538;
9079:
+9080: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9081: if I[i - 1, j] == Io:
__pyx_t_539 = (__pyx_v_i - 1);
__pyx_t_540 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_539, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_540, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9082: I[i, j] = Io
__pyx_t_541 = __pyx_v_i;
__pyx_t_542 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_541, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_542, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9083: Col[i, j, 2] = red
__pyx_t_543 = __pyx_v_i;
__pyx_t_544 = __pyx_v_j;
__pyx_t_545 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_543, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_544, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_545, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9084: Col[i, j, 1] = green
__pyx_t_546 = __pyx_v_i;
__pyx_t_547 = __pyx_v_j;
__pyx_t_548 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_546, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_547, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_548, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9085: Col[i, j, 0] = blue
__pyx_t_549 = __pyx_v_i;
__pyx_t_550 = __pyx_v_j;
__pyx_t_551 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_549, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_550, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_551, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9086: a[k] = 1
__pyx_t_552 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_552, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9087: break
goto __pyx_L170_break;
+9088: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9089: if I[i, j - 1] == Io:
__pyx_t_553 = __pyx_v_i;
__pyx_t_554 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_553, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_554, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9090: I[i, j] = Io
__pyx_t_555 = __pyx_v_i;
__pyx_t_556 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_555, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_556, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9091: Col[i, j, 2] = red
__pyx_t_557 = __pyx_v_i;
__pyx_t_558 = __pyx_v_j;
__pyx_t_559 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_557, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_558, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_559, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9092: Col[i, j, 1] = green
__pyx_t_560 = __pyx_v_i;
__pyx_t_561 = __pyx_v_j;
__pyx_t_562 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_560, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_561, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_562, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9093: Col[i, j, 0] = blue
__pyx_t_563 = __pyx_v_i;
__pyx_t_564 = __pyx_v_j;
__pyx_t_565 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_563, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_564, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_565, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9094: a[k] = 1
__pyx_t_566 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_566, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9095: break
goto __pyx_L170_break;
9096:
+9097: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+9098: if I[i, j + 1] == Io:
__pyx_t_567 = __pyx_v_i;
__pyx_t_568 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_567, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_568, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9099: I[i, j] = Io
__pyx_t_569 = __pyx_v_i;
__pyx_t_570 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_569, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_570, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9100: Col[i, j, 2] = red
__pyx_t_571 = __pyx_v_i;
__pyx_t_572 = __pyx_v_j;
__pyx_t_573 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_571, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_572, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_573, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9101: Col[i, j, 1] = green
__pyx_t_574 = __pyx_v_i;
__pyx_t_575 = __pyx_v_j;
__pyx_t_576 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_574, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_575, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_576, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9102: Col[i, j, 0] = blue
__pyx_t_577 = __pyx_v_i;
__pyx_t_578 = __pyx_v_j;
__pyx_t_579 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_577, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_578, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_579, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9103: a[k] = 1
__pyx_t_580 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_580, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9104: break
goto __pyx_L170_break;
9105:
9106:
+9107: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L170_break:;
+9108: if I[i + 1, j] == Io:
__pyx_t_581 = (__pyx_v_i + 1);
__pyx_t_582 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_581, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_582, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9109: I[i, j] = Io
__pyx_t_583 = __pyx_v_i;
__pyx_t_584 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_583, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_584, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9110: Col[i, j, 2] = red
__pyx_t_585 = __pyx_v_i;
__pyx_t_586 = __pyx_v_j;
__pyx_t_587 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_585, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_586, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_587, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9111: Col[i, j, 1] = green
__pyx_t_588 = __pyx_v_i;
__pyx_t_589 = __pyx_v_j;
__pyx_t_590 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_588, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_589, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_590, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9112: Col[i, j, 0] = blue
__pyx_t_591 = __pyx_v_i;
__pyx_t_592 = __pyx_v_j;
__pyx_t_593 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_591, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_592, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_593, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9113: a[k] = 1
__pyx_t_594 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_594, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9114: break
goto __pyx_L170_break;
9115:
9116:
+9117: i, j = xo - deli, yo - delj
__pyx_t_538 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_595 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_538;
__pyx_v_j = __pyx_t_595;
+9118: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_27 = (0 <= __pyx_v_i);
if (__pyx_t_27) {
__pyx_t_27 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_421 = (__pyx_t_27 != 0);
if (__pyx_t_421) {
} else {
__pyx_t_25 = __pyx_t_421;
goto __pyx_L180_bool_binop_done;
}
__pyx_t_421 = (0 <= __pyx_v_j);
if (__pyx_t_421) {
__pyx_t_421 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_27 = (__pyx_t_421 != 0);
__pyx_t_25 = __pyx_t_27;
__pyx_L180_bool_binop_done:;
if (__pyx_t_25) {
/* … */
}
+9119: if I[i, j] == 0:
__pyx_t_595 = __pyx_v_i;
__pyx_t_538 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_595, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_538, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9120: for dum in range(1):
for (__pyx_t_596 = 0; __pyx_t_596 < 1; __pyx_t_596+=1) {
__pyx_v_dum = __pyx_t_596;
9121:
+9122: if i > 0:
__pyx_t_25 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9123: if I[i - 1, j] == Io:
__pyx_t_597 = (__pyx_v_i - 1);
__pyx_t_598 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_597, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_598, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9124: I[i, j] = Io
__pyx_t_599 = __pyx_v_i;
__pyx_t_600 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_599, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_600, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9125: Col[i, j, 2] = red
__pyx_t_601 = __pyx_v_i;
__pyx_t_602 = __pyx_v_j;
__pyx_t_603 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_601, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_602, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_603, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9126: Col[i, j, 1] = green
__pyx_t_604 = __pyx_v_i;
__pyx_t_605 = __pyx_v_j;
__pyx_t_606 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_604, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_605, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_606, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9127: Col[i, j, 0] = blue
__pyx_t_607 = __pyx_v_i;
__pyx_t_608 = __pyx_v_j;
__pyx_t_609 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_607, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_608, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_609, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9128: a[k] = 1
__pyx_t_610 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_610, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9129: break
goto __pyx_L184_break;
+9130: if j > 0:
__pyx_t_25 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9131: if I[i, j - 1] == Io:
__pyx_t_611 = __pyx_v_i;
__pyx_t_612 = (__pyx_v_j - 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_611, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_612, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9132: I[i, j] = Io
__pyx_t_613 = __pyx_v_i;
__pyx_t_614 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_613, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_614, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9133: Col[i, j, 2] = red
__pyx_t_615 = __pyx_v_i;
__pyx_t_616 = __pyx_v_j;
__pyx_t_617 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_615, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_616, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_617, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9134: Col[i, j, 1] = green
__pyx_t_618 = __pyx_v_i;
__pyx_t_619 = __pyx_v_j;
__pyx_t_620 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_618, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_619, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_620, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9135: Col[i, j, 0] = blue
__pyx_t_621 = __pyx_v_i;
__pyx_t_622 = __pyx_v_j;
__pyx_t_623 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_621, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_622, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_623, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9136: a[k] = 1
__pyx_t_624 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_624, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9137: break
goto __pyx_L184_break;
9138:
+9139: if j < n - 1:
__pyx_t_25 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
+9140: if I[i, j + 1] == Io:
__pyx_t_625 = __pyx_v_i;
__pyx_t_626 = (__pyx_v_j + 1);
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_625, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_626, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9141: I[i, j] = Io
__pyx_t_627 = __pyx_v_i;
__pyx_t_628 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_627, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_628, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9142: Col[i, j, 2] = red
__pyx_t_629 = __pyx_v_i;
__pyx_t_630 = __pyx_v_j;
__pyx_t_631 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_629, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_630, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_631, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9143: Col[i, j, 1] = green
__pyx_t_632 = __pyx_v_i;
__pyx_t_633 = __pyx_v_j;
__pyx_t_634 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_632, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_633, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_634, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9144: Col[i, j, 0] = blue
__pyx_t_635 = __pyx_v_i;
__pyx_t_636 = __pyx_v_j;
__pyx_t_637 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_635, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_636, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_637, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9145: a[k] = 1
__pyx_t_638 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_638, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9146: break
goto __pyx_L184_break;
9147:
9148:
+9149: if i < m - 1:
__pyx_t_25 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_25) {
/* … */
}
}
__pyx_L184_break:;
+9150: if I[i + 1, j] == Io:
__pyx_t_639 = (__pyx_v_i + 1);
__pyx_t_640 = __pyx_v_j;
__pyx_t_25 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_639, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_640, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_25) {
/* … */
}
+9151: I[i, j] = Io
__pyx_t_641 = __pyx_v_i;
__pyx_t_642 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_641, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_642, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9152: Col[i, j, 2] = red
__pyx_t_643 = __pyx_v_i;
__pyx_t_644 = __pyx_v_j;
__pyx_t_645 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_643, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_644, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_645, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9153: Col[i, j, 1] = green
__pyx_t_646 = __pyx_v_i;
__pyx_t_647 = __pyx_v_j;
__pyx_t_648 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_646, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_647, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_648, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9154: Col[i, j, 0] = blue
__pyx_t_649 = __pyx_v_i;
__pyx_t_650 = __pyx_v_j;
__pyx_t_651 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_649, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_650, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_651, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9155: a[k] = 1
__pyx_t_652 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_652, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9156: break
goto __pyx_L184_break;
9157:
9158:
9159:
+9160: if a[k] == 0:
__pyx_t_415 = __pyx_v_k;
__pyx_t_25 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_415, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_25) {
/* … */
}
+9161: xmin = max(0, xo - delX)
__pyx_t_416 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_653 = 0;
if (((__pyx_t_416 > __pyx_t_653) != 0)) {
__pyx_t_417 = __pyx_t_416;
} else {
__pyx_t_417 = __pyx_t_653;
}
__pyx_v_xmin = __pyx_t_417;
+9162: xmax = min(m - 1, xo + delX)
__pyx_t_417 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_416 = (__pyx_v_m - 1);
if (((__pyx_t_417 < __pyx_t_416) != 0)) {
__pyx_t_418 = __pyx_t_417;
} else {
__pyx_t_418 = __pyx_t_416;
}
__pyx_v_xmax = __pyx_t_418;
+9163: ymin = max(0, yo - delY)
__pyx_t_418 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_653 = 0;
if (((__pyx_t_418 > __pyx_t_653) != 0)) {
__pyx_t_417 = __pyx_t_418;
} else {
__pyx_t_417 = __pyx_t_653;
}
__pyx_v_ymin = __pyx_t_417;
+9164: ymax = min(n - 1, yo + delY)
__pyx_t_417 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_418 = (__pyx_v_n - 1);
if (((__pyx_t_417 < __pyx_t_418) != 0)) {
__pyx_t_416 = __pyx_t_417;
} else {
__pyx_t_416 = __pyx_t_418;
}
__pyx_v_ymax = __pyx_t_416;
+9165: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_416 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_416, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
9166:
9167:
+9168: showriteframe(sa, sf, fd, countim, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_countim, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+9169: nnz = cv2.countNonZero(I)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_44 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 9169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_44))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); } } if (!__pyx_t_7) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_44, ((PyObject *)__pyx_v_I)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); __pyx_t_7 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_I)); __Pyx_GIVEREF(((PyObject *)__pyx_v_I)); PyTuple_SET_ITEM(__pyx_t_8, 0+1, ((PyObject *)__pyx_v_I)); __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_393 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_5); if (unlikely((__pyx_t_393 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9169, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_nnz = __pyx_t_393; }
9170:
9171:
+9172: obj.p = p
__pyx_t_5 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_p, __pyx_t_5) < 0) __PYX_ERR(0, 9172, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+9173: toc = time.time()
__pyx_t_44 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 9173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_44, __pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_44 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_44 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_44)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_44); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (__pyx_t_44) { __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_44); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9173, __pyx_L1_error) __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; } else { __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9173, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_24 = __pyx_PyFloat_AsDouble(__pyx_t_5); if (unlikely((__pyx_t_24 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 9173, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_v_toc = __pyx_t_24;
+9174: obj.exetime = toc - tic
__pyx_t_5 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_5) < 0) __PYX_ERR(0, 9174, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+9175: obj.X = np.delete(X, np.arange(p, MN))
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_44 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_delete); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_arange); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_1) { __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_1); __pyx_t_1 = NULL; } __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, __pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_6); __pyx_t_7 = 0; __pyx_t_6 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_26, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_44))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_44); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_44); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_44, function); __pyx_t_28 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_28, ((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_28, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_44, __pyx_t_26, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, __pyx_t_5) < 0) __PYX_ERR(0, 9175, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+9176: obj.Y = np.delete(Y, np.arange(p, MN))
__pyx_t_44 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_44, __pyx_n_s_delete); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_44); __pyx_t_44 = 0; __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_36 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_arange); if (unlikely(!__pyx_t_36)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_36); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_MN); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_36))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_36); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_36); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_36, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_6); __pyx_t_8 = 0; __pyx_t_6 = 0; __pyx_t_44 = __Pyx_PyObject_Call(__pyx_t_36, __pyx_t_1, NULL); if (unlikely(!__pyx_t_44)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_44); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_36); __pyx_t_36 = 0; __pyx_t_36 = NULL; __pyx_t_28 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_26))) { __pyx_t_36 = PyMethod_GET_SELF(__pyx_t_26); if (likely(__pyx_t_36)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26); __Pyx_INCREF(__pyx_t_36); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_26, function); __pyx_t_28 = 1; } } __pyx_t_1 = PyTuple_New(2+__pyx_t_28); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_36) { __Pyx_GIVEREF(__pyx_t_36); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_36); __pyx_t_36 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_28, ((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(__pyx_t_44); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_28, __pyx_t_44); __pyx_t_44 = 0; __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_26, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, __pyx_t_5) < 0) __PYX_ERR(0, 9176, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
+9177: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 9177, __pyx_L1_error)
+9178: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 9178, __pyx_L1_error)
+9179: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;
9180:
9181:
+9182: def Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot(obj):
/* Python wrapper */
static PyObject *__pyx_pw_9libEVOLVE_61Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj); /*proto*/
static PyMethodDef __pyx_mdef_9libEVOLVE_61Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot = {"Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot", (PyCFunction)__pyx_pw_9libEVOLVE_61Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot, METH_O, 0};
static PyObject *__pyx_pw_9libEVOLVE_61Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot(PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PyObject *__pyx_r = 0;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot (wrapper)", 0);
__pyx_r = __pyx_pf_9libEVOLVE_60Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot(__pyx_self, ((PyObject *)__pyx_v_obj));
/* function exit code */
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
static PyObject *__pyx_pf_9libEVOLVE_60Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_obj) {
PY_LONG_LONG __pyx_v_p;
PY_LONG_LONG __pyx_v_sf;
PY_LONG_LONG __pyx_v_sa;
PY_LONG_LONG __pyx_v_m;
PY_LONG_LONG __pyx_v_n;
float __pyx_v_Rab;
float __pyx_v_Rac;
PyArrayObject *__pyx_v_EUL = 0;
PY_LONG_LONG __pyx_v_myseed;
int __pyx_v_framepause;
int __pyx_v_asy;
int __pyx_v_labelsorted;
PyObject *__pyx_v_fd = NULL;
PyObject *__pyx_v_pdelNxy = NULL;
double __pyx_v_tic;
double __pyx_v_toc;
PY_LONG_LONG __pyx_v_i;
PY_LONG_LONG __pyx_v_j;
PY_LONG_LONG __pyx_v_deli;
PY_LONG_LONG __pyx_v_delj;
PY_LONG_LONG __pyx_v_xo;
PY_LONG_LONG __pyx_v_yo;
PY_LONG_LONG __pyx_v_k;
PY_LONG_LONG __pyx_v_Io;
PY_LONG_LONG __pyx_v_delX;
PY_LONG_LONG __pyx_v_delY;
PY_LONG_LONG __pyx_v_aAXIS;
PY_LONG_LONG __pyx_v_Iter;
CYTHON_UNUSED float __pyx_v_bAXIS;
CYTHON_UNUSED float __pyx_v_cAXIS;
float __pyx_v_red;
float __pyx_v_green;
float __pyx_v_blue;
float __pyx_v_theta;
float __pyx_v_cx;
float __pyx_v_cy;
float __pyx_v_MAJ;
float __pyx_v_MIN;
float __pyx_v_A;
float __pyx_v_H;
float __pyx_v_B;
float __pyx_v_c;
float __pyx_v_s;
float __pyx_v_c2;
float __pyx_v_s2;
float __pyx_v_Rab2;
float __pyx_v_Rac2;
float __pyx_v_hsc;
PyArrayObject *__pyx_v_I = 0;
PyArrayObject *__pyx_v_Iold = 0;
PyArrayObject *__pyx_v_a = 0;
PyArrayObject *__pyx_v_X = 0;
PyArrayObject *__pyx_v_Y = 0;
PyArrayObject *__pyx_v_col = 0;
PyArrayObject *__pyx_v_Col = 0;
PyArrayObject *__pyx_v_Colcanvas = 0;
PyArrayObject *__pyx_v_major2d = 0;
PyArrayObject *__pyx_v_minor2d = 0;
PyArrayObject *__pyx_v_Theta = 0;
PyArrayObject *__pyx_v_Rot = 0;
PyArrayObject *__pyx_v_ROT = 0;
CYTHON_UNUSED long __pyx_v_dum;
PY_LONG_LONG __pyx_v_xmin;
PY_LONG_LONG __pyx_v_xmax;
PY_LONG_LONG __pyx_v_ymin;
PY_LONG_LONG __pyx_v_ymax;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Col;
__Pyx_Buffer __pyx_pybuffer_Col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Colcanvas;
__Pyx_Buffer __pyx_pybuffer_Colcanvas;
__Pyx_LocalBuf_ND __pyx_pybuffernd_EUL;
__Pyx_Buffer __pyx_pybuffer_EUL;
__Pyx_LocalBuf_ND __pyx_pybuffernd_I;
__Pyx_Buffer __pyx_pybuffer_I;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Iold;
__Pyx_Buffer __pyx_pybuffer_Iold;
__Pyx_LocalBuf_ND __pyx_pybuffernd_ROT;
__Pyx_Buffer __pyx_pybuffer_ROT;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Rot;
__Pyx_Buffer __pyx_pybuffer_Rot;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Theta;
__Pyx_Buffer __pyx_pybuffer_Theta;
__Pyx_LocalBuf_ND __pyx_pybuffernd_X;
__Pyx_Buffer __pyx_pybuffer_X;
__Pyx_LocalBuf_ND __pyx_pybuffernd_Y;
__Pyx_Buffer __pyx_pybuffer_Y;
__Pyx_LocalBuf_ND __pyx_pybuffernd_a;
__Pyx_Buffer __pyx_pybuffer_a;
__Pyx_LocalBuf_ND __pyx_pybuffernd_col;
__Pyx_Buffer __pyx_pybuffer_col;
__Pyx_LocalBuf_ND __pyx_pybuffernd_major2d;
__Pyx_Buffer __pyx_pybuffer_major2d;
__Pyx_LocalBuf_ND __pyx_pybuffernd_minor2d;
__Pyx_Buffer __pyx_pybuffer_minor2d;
PyObject *__pyx_r = NULL;
__Pyx_RefNannyDeclarations
__Pyx_RefNannySetupContext("Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot", 0);
__pyx_pybuffer_EUL.pybuffer.buf = NULL;
__pyx_pybuffer_EUL.refcount = 0;
__pyx_pybuffernd_EUL.data = NULL;
__pyx_pybuffernd_EUL.rcbuffer = &__pyx_pybuffer_EUL;
__pyx_pybuffer_I.pybuffer.buf = NULL;
__pyx_pybuffer_I.refcount = 0;
__pyx_pybuffernd_I.data = NULL;
__pyx_pybuffernd_I.rcbuffer = &__pyx_pybuffer_I;
__pyx_pybuffer_Iold.pybuffer.buf = NULL;
__pyx_pybuffer_Iold.refcount = 0;
__pyx_pybuffernd_Iold.data = NULL;
__pyx_pybuffernd_Iold.rcbuffer = &__pyx_pybuffer_Iold;
__pyx_pybuffer_a.pybuffer.buf = NULL;
__pyx_pybuffer_a.refcount = 0;
__pyx_pybuffernd_a.data = NULL;
__pyx_pybuffernd_a.rcbuffer = &__pyx_pybuffer_a;
__pyx_pybuffer_X.pybuffer.buf = NULL;
__pyx_pybuffer_X.refcount = 0;
__pyx_pybuffernd_X.data = NULL;
__pyx_pybuffernd_X.rcbuffer = &__pyx_pybuffer_X;
__pyx_pybuffer_Y.pybuffer.buf = NULL;
__pyx_pybuffer_Y.refcount = 0;
__pyx_pybuffernd_Y.data = NULL;
__pyx_pybuffernd_Y.rcbuffer = &__pyx_pybuffer_Y;
__pyx_pybuffer_col.pybuffer.buf = NULL;
__pyx_pybuffer_col.refcount = 0;
__pyx_pybuffernd_col.data = NULL;
__pyx_pybuffernd_col.rcbuffer = &__pyx_pybuffer_col;
__pyx_pybuffer_Col.pybuffer.buf = NULL;
__pyx_pybuffer_Col.refcount = 0;
__pyx_pybuffernd_Col.data = NULL;
__pyx_pybuffernd_Col.rcbuffer = &__pyx_pybuffer_Col;
__pyx_pybuffer_Colcanvas.pybuffer.buf = NULL;
__pyx_pybuffer_Colcanvas.refcount = 0;
__pyx_pybuffernd_Colcanvas.data = NULL;
__pyx_pybuffernd_Colcanvas.rcbuffer = &__pyx_pybuffer_Colcanvas;
__pyx_pybuffer_major2d.pybuffer.buf = NULL;
__pyx_pybuffer_major2d.refcount = 0;
__pyx_pybuffernd_major2d.data = NULL;
__pyx_pybuffernd_major2d.rcbuffer = &__pyx_pybuffer_major2d;
__pyx_pybuffer_minor2d.pybuffer.buf = NULL;
__pyx_pybuffer_minor2d.refcount = 0;
__pyx_pybuffernd_minor2d.data = NULL;
__pyx_pybuffernd_minor2d.rcbuffer = &__pyx_pybuffer_minor2d;
__pyx_pybuffer_Theta.pybuffer.buf = NULL;
__pyx_pybuffer_Theta.refcount = 0;
__pyx_pybuffernd_Theta.data = NULL;
__pyx_pybuffernd_Theta.rcbuffer = &__pyx_pybuffer_Theta;
__pyx_pybuffer_Rot.pybuffer.buf = NULL;
__pyx_pybuffer_Rot.refcount = 0;
__pyx_pybuffernd_Rot.data = NULL;
__pyx_pybuffernd_Rot.rcbuffer = &__pyx_pybuffer_Rot;
__pyx_pybuffer_ROT.pybuffer.buf = NULL;
__pyx_pybuffer_ROT.refcount = 0;
__pyx_pybuffernd_ROT.data = NULL;
__pyx_pybuffernd_ROT.rcbuffer = &__pyx_pybuffer_ROT;
/* … */
/* function exit code */
__pyx_L1_error:;
__Pyx_XDECREF(__pyx_t_1);
__Pyx_XDECREF(__pyx_t_6);
__Pyx_XDECREF(__pyx_t_7);
__Pyx_XDECREF(__pyx_t_8);
__Pyx_XDECREF(__pyx_t_9);
__Pyx_XDECREF(__pyx_t_23);
__Pyx_XDECREF(__pyx_t_24);
__Pyx_XDECREF(__pyx_t_26);
{ PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
__Pyx_PyThreadState_declare
__Pyx_PyThreadState_assign
__Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_EUL.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ROT.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rot.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_major2d.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_minor2d.rcbuffer->pybuffer);
__Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
__Pyx_AddTraceback("libEVOLVE.Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot", __pyx_clineno, __pyx_lineno, __pyx_filename);
__pyx_r = NULL;
goto __pyx_L2;
__pyx_L0:;
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_EUL.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ROT.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Rot.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_col.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_major2d.rcbuffer->pybuffer);
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_minor2d.rcbuffer->pybuffer);
__pyx_L2:;
__Pyx_XDECREF((PyObject *)__pyx_v_EUL);
__Pyx_XDECREF(__pyx_v_fd);
__Pyx_XDECREF(__pyx_v_pdelNxy);
__Pyx_XDECREF((PyObject *)__pyx_v_I);
__Pyx_XDECREF((PyObject *)__pyx_v_Iold);
__Pyx_XDECREF((PyObject *)__pyx_v_a);
__Pyx_XDECREF((PyObject *)__pyx_v_X);
__Pyx_XDECREF((PyObject *)__pyx_v_Y);
__Pyx_XDECREF((PyObject *)__pyx_v_col);
__Pyx_XDECREF((PyObject *)__pyx_v_Col);
__Pyx_XDECREF((PyObject *)__pyx_v_Colcanvas);
__Pyx_XDECREF((PyObject *)__pyx_v_major2d);
__Pyx_XDECREF((PyObject *)__pyx_v_minor2d);
__Pyx_XDECREF((PyObject *)__pyx_v_Theta);
__Pyx_XDECREF((PyObject *)__pyx_v_Rot);
__Pyx_XDECREF((PyObject *)__pyx_v_ROT);
__Pyx_XGIVEREF(__pyx_r);
__Pyx_RefNannyFinishContext();
return __pyx_r;
}
/* … */
__pyx_tuple__71 = PyTuple_Pack(72, __pyx_n_s_obj, __pyx_n_s_p, __pyx_n_s_sf, __pyx_n_s_sa, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_Rab, __pyx_n_s_Rac, __pyx_n_s_EUL, __pyx_n_s_myseed, __pyx_n_s_framepause, __pyx_n_s_asy, __pyx_n_s_labelsorted, __pyx_n_s_fd, __pyx_n_s_pdelNxy, __pyx_n_s_tic, __pyx_n_s_toc, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_deli, __pyx_n_s_delj, __pyx_n_s_xo, __pyx_n_s_yo, __pyx_n_s_PN, __pyx_n_s_PE, __pyx_n_s_PW, __pyx_n_s_PS, __pyx_n_s_k, __pyx_n_s_Io, __pyx_n_s_countim, __pyx_n_s_delX, __pyx_n_s_delY, __pyx_n_s_aAXIS, __pyx_n_s_Iter, __pyx_n_s_bAXIS, __pyx_n_s_cAXIS, __pyx_n_s_red, __pyx_n_s_green, __pyx_n_s_blue, __pyx_n_s_theta, __pyx_n_s_cx, __pyx_n_s_cy, __pyx_n_s_MAJ, __pyx_n_s_MIN, __pyx_n_s_A, __pyx_n_s_H, __pyx_n_s_B, __pyx_n_s_c, __pyx_n_s_s, __pyx_n_s_c2, __pyx_n_s_s2, __pyx_n_s_Rab2, __pyx_n_s_Rac2, __pyx_n_s_hsc, __pyx_n_s_I, __pyx_n_s_Iold, __pyx_n_s_a, __pyx_n_s_X, __pyx_n_s_Y, __pyx_n_s_col, __pyx_n_s_Col, __pyx_n_s_Colcanvas, __pyx_n_s_major2d, __pyx_n_s_minor2d, __pyx_n_s_Theta, __pyx_n_s_Rot, __pyx_n_s_ROT, __pyx_n_s_dum, __pyx_n_s_xmin, __pyx_n_s_xmax, __pyx_n_s_ymin, __pyx_n_s_ymax); if (unlikely(!__pyx_tuple__71)) __PYX_ERR(0, 9182, __pyx_L1_error)
__Pyx_GOTREF(__pyx_tuple__71);
__Pyx_GIVEREF(__pyx_tuple__71);
/* … */
__pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_9libEVOLVE_61Evolve_2D_Anisotropic_SiteSaturated_Generic_TextureBased_Ellipsoidal_without_ab_without_ac_without_adot, NULL, __pyx_n_s_libEVOLVE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9182, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_2);
if (PyDict_SetItem(__pyx_d, __pyx_n_s_Evolve_2D_Anisotropic_SiteSatura_13, __pyx_t_2) < 0) __PYX_ERR(0, 9182, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9183: # Grabbing data from the input object
+9184: cdef long long p = obj.p
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9184, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_p = __pyx_t_2;
+9185: cdef long long sf = obj.sf
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sf); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9185, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sf = __pyx_t_2;
+9186: cdef long long sa = obj.sa
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_sa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9186, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_sa = __pyx_t_2;
+9187: cdef long long m = obj.m
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9187, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9187, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_m = __pyx_t_2;
+9188: cdef long long n = obj.n
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_n); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9188, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_n = __pyx_t_2;
+9189: cdef float Rab = obj.Rab
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rab); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 9189, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_Rab = __pyx_t_3;
+9190: cdef float Rac = obj.Rac
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_Rac); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_1); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 9190, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_Rac = __pyx_t_3;
+9191: cdef np.ndarray[np.float64_t, ndim = 3] EUL = obj.EUL
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_EUL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9191, __pyx_L1_error) __pyx_t_4 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_EUL.rcbuffer->pybuffer, (PyObject*)__pyx_t_4, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 3, 0, __pyx_stack) == -1)) { __pyx_v_EUL = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_EUL.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9191, __pyx_L1_error) } else {__pyx_pybuffernd_EUL.diminfo[0].strides = __pyx_pybuffernd_EUL.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_EUL.diminfo[0].shape = __pyx_pybuffernd_EUL.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_EUL.diminfo[1].strides = __pyx_pybuffernd_EUL.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_EUL.diminfo[1].shape = __pyx_pybuffernd_EUL.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_EUL.diminfo[2].strides = __pyx_pybuffernd_EUL.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_EUL.diminfo[2].shape = __pyx_pybuffernd_EUL.rcbuffer->pybuffer.shape[2]; } } __pyx_t_4 = 0; __pyx_v_EUL = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+9192: cdef long long myseed = obj.myseed
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_1); if (unlikely((__pyx_t_2 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9192, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_myseed = __pyx_t_2;
+9193: cdef int framepause = obj.framepause
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_framepause); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 9193, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_framepause = __pyx_t_5;
+9194: cdef int asy = obj.asy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_asy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9194, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 9194, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_asy = __pyx_t_5;
+9195: cdef int labelsorted = obj.labelsorted
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_labelsorted); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_1); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 9195, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_labelsorted = __pyx_t_5;
+9196: fd = obj.fd
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_fd); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_fd = __pyx_t_1; __pyx_t_1 = 0;
+9197: pdelNxy = obj.pdelNxy
__pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_obj, __pyx_n_s_pdelNxy); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_v_pdelNxy = __pyx_t_1; __pyx_t_1 = 0;
9198:
9199: # Declaring other variables
9200: cdef double tic, toc
9201: cdef long long i, j, deli, delj, xo, yo, PN, PE, PW, PS , k, Io, countim, delX, delY, aAXIS, Iter
9202: cdef float bAXIS, cAXIS, red, green, blue, theta, cx, cy, MAJ, MIN, A, H, B, c, s, c2, s2, Rab2, Rac2, hsc
+9203: cdef np.ndarray[np.int64_t, ndim = 2] I = np.zeros((m, n), dtype=np.int64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_7); __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_9) < 0) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9203, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_9); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_I = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_I.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9203, __pyx_L1_error) } else {__pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; } } __pyx_t_10 = 0; __pyx_v_I = ((PyArrayObject *)__pyx_t_9); __pyx_t_9 = 0;
+9204: cdef np.ndarray[np.int64_t, ndim = 2] Iold = np.zeros((m, n), dtype=np.int64)
__pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_7); __pyx_t_9 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_int64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9204, __pyx_L1_error) __pyx_t_11 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_t_11, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) { __pyx_v_Iold = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Iold.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9204, __pyx_L1_error) } else {__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1]; } } __pyx_t_11 = 0; __pyx_v_Iold = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+9205: cdef np.ndarray[np.int8_t, ndim = 1] a = np.ones(p, dtype=np.int8)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_int8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_9) < 0) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9205, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_9); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_a = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_a.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9205, __pyx_L1_error) } else {__pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; } } __pyx_t_12 = 0; __pyx_v_a = ((PyArrayObject *)__pyx_t_9); __pyx_t_9 = 0;
+9206: cdef np.ndarray[np.int64_t, ndim = 1] X = np.zeros(p, dtype=np.int64)
__pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_int64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9206, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_X = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_X.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9206, __pyx_L1_error) } else {__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; } } __pyx_t_13 = 0; __pyx_v_X = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+9207: cdef np.ndarray[np.int64_t, ndim = 1] Y = np.zeros(p, dtype=np.int64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9207, __pyx_L1_error) __pyx_t_14 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { __pyx_v_Y = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9207, __pyx_L1_error) } else {__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; } } __pyx_t_14 = 0; __pyx_v_Y = ((PyArrayObject *)__pyx_t_6); __pyx_t_6 = 0;
+9208: cdef np.ndarray[np.float64_t, ndim = 2] col = np.zeros((p, 3), dtype=np.float64)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_int_3); __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9208, __pyx_L1_error) __pyx_t_15 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_col.rcbuffer->pybuffer, (PyObject*)__pyx_t_15, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { __pyx_v_col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9208, __pyx_L1_error) } else {__pyx_pybuffernd_col.diminfo[0].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_col.diminfo[0].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_col.diminfo[1].strides = __pyx_pybuffernd_col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_col.diminfo[1].shape = __pyx_pybuffernd_col.rcbuffer->pybuffer.shape[1]; } } __pyx_t_15 = 0; __pyx_v_col = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+9209: cdef np.ndarray[np.float64_t, ndim = 3] Col = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_9) < 0) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9209, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9209, __pyx_L1_error) __pyx_t_16 = ((PyArrayObject *)__pyx_t_9); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Col.rcbuffer->pybuffer, (PyObject*)__pyx_t_16, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Col = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9209, __pyx_L1_error) } else {__pyx_pybuffernd_Col.diminfo[0].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Col.diminfo[0].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Col.diminfo[1].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Col.diminfo[1].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Col.diminfo[2].strides = __pyx_pybuffernd_Col.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Col.diminfo[2].shape = __pyx_pybuffernd_Col.rcbuffer->pybuffer.shape[2]; } } __pyx_t_16 = 0; __pyx_v_Col = ((PyArrayObject *)__pyx_t_9); __pyx_t_9 = 0;
+9210: cdef np.ndarray[np.float64_t, ndim = 3] Colcanvas = np.zeros((m, n, 3), dtype=np.float64)
__pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_9); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_int_3); __pyx_t_9 = 0; __pyx_t_6 = 0; __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9210, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 3, 0, __pyx_stack) == -1)) { __pyx_v_Colcanvas = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9210, __pyx_L1_error) } else {__pyx_pybuffernd_Colcanvas.diminfo[0].strides = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Colcanvas.diminfo[0].shape = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Colcanvas.diminfo[1].strides = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Colcanvas.diminfo[1].shape = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Colcanvas.diminfo[2].strides = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Colcanvas.diminfo[2].shape = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.shape[2]; } } __pyx_t_17 = 0; __pyx_v_Colcanvas = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+9211: cdef np.ndarray[np.float64_t, ndim = 1] major2d = np.zeros(p, dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_float64); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_9) < 0) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9211, __pyx_L1_error) __pyx_t_18 = ((PyArrayObject *)__pyx_t_9); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_major2d.rcbuffer->pybuffer, (PyObject*)__pyx_t_18, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_major2d = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_major2d.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9211, __pyx_L1_error) } else {__pyx_pybuffernd_major2d.diminfo[0].strides = __pyx_pybuffernd_major2d.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_major2d.diminfo[0].shape = __pyx_pybuffernd_major2d.rcbuffer->pybuffer.shape[0]; } } __pyx_t_18 = 0; __pyx_v_major2d = ((PyArrayObject *)__pyx_t_9); __pyx_t_9 = 0;
+9212: cdef np.ndarray[np.float64_t, ndim = 1] minor2d = np.zeros(p, dtype=np.float64)
__pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_dtype, __pyx_t_8) < 0) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9212, __pyx_L1_error) __pyx_t_19 = ((PyArrayObject *)__pyx_t_8); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_minor2d.rcbuffer->pybuffer, (PyObject*)__pyx_t_19, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_minor2d = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_minor2d.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9212, __pyx_L1_error) } else {__pyx_pybuffernd_minor2d.diminfo[0].strides = __pyx_pybuffernd_minor2d.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_minor2d.diminfo[0].shape = __pyx_pybuffernd_minor2d.rcbuffer->pybuffer.shape[0]; } } __pyx_t_19 = 0; __pyx_v_minor2d = ((PyArrayObject *)__pyx_t_8); __pyx_t_8 = 0;
+9213: cdef np.ndarray[np.float64_t, ndim = 1] Theta = np.zeros(p, dtype=np.float64)
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_7) < 0) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9213, __pyx_L1_error) __pyx_t_20 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Theta.rcbuffer->pybuffer, (PyObject*)__pyx_t_20, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { __pyx_v_Theta = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9213, __pyx_L1_error) } else {__pyx_pybuffernd_Theta.diminfo[0].strides = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Theta.diminfo[0].shape = __pyx_pybuffernd_Theta.rcbuffer->pybuffer.shape[0]; } } __pyx_t_20 = 0; __pyx_v_Theta = ((PyArrayObject *)__pyx_t_7); __pyx_t_7 = 0;
+9214: cdef np.ndarray[np.float64_t, ndim = 3] Rot = np.zeros((p, 3, 3), dtype=np.float64)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zeros); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_int_3); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_int_3); __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_float64); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_1) < 0) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9214, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9214, __pyx_L1_error) __pyx_t_21 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Rot.rcbuffer->pybuffer, (PyObject*)__pyx_t_21, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 3, 0, __pyx_stack) == -1)) { __pyx_v_Rot = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9214, __pyx_L1_error) } else {__pyx_pybuffernd_Rot.diminfo[0].strides = __pyx_pybuffernd_Rot.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Rot.diminfo[0].shape = __pyx_pybuffernd_Rot.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Rot.diminfo[1].strides = __pyx_pybuffernd_Rot.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Rot.diminfo[1].shape = __pyx_pybuffernd_Rot.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Rot.diminfo[2].strides = __pyx_pybuffernd_Rot.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Rot.diminfo[2].shape = __pyx_pybuffernd_Rot.rcbuffer->pybuffer.shape[2]; } } __pyx_t_21 = 0; __pyx_v_Rot = ((PyArrayObject *)__pyx_t_1); __pyx_t_1 = 0;
+9215: cdef np.ndarray[np.float64_t, ndim = 4] ROT = np.zeros((m, n, 3, 3), dtype=np.float64)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = PyTuple_New(4); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_7); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_int_3); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_int_3); __pyx_t_1 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float64); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_9) < 0) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9215, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9215, __pyx_L1_error) __pyx_t_22 = ((PyArrayObject *)__pyx_t_9); { __Pyx_BufFmt_StackElem __pyx_stack[1]; if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ROT.rcbuffer->pybuffer, (PyObject*)__pyx_t_22, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 4, 0, __pyx_stack) == -1)) { __pyx_v_ROT = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf = NULL; __PYX_ERR(0, 9215, __pyx_L1_error) } else {__pyx_pybuffernd_ROT.diminfo[0].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ROT.diminfo[0].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_ROT.diminfo[1].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_ROT.diminfo[1].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_ROT.diminfo[2].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_ROT.diminfo[2].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[2]; __pyx_pybuffernd_ROT.diminfo[3].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[3]; __pyx_pybuffernd_ROT.diminfo[3].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[3]; } } __pyx_t_22 = 0; __pyx_v_ROT = ((PyArrayObject *)__pyx_t_9); __pyx_t_9 = 0;
9216:
+9217: ROT = conv.zxz_to_rm(EUL.reshape(m * n, 3)).reshape(m, n, 3, 3)
__pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_conv); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_zxz_to_rm); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_EUL), __pyx_n_s_reshape); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_23 = __Pyx_PyInt_From_PY_LONG_LONG((__pyx_v_m * __pyx_v_n)); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_24 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_1))) { __pyx_t_24 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_24)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_24); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_25 = 1; } } __pyx_t_26 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__pyx_t_24) { __Pyx_GIVEREF(__pyx_t_24); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_24); __pyx_t_24 = NULL; } __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_26, 0+__pyx_t_25, __pyx_t_23); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_26, 1+__pyx_t_25, __pyx_int_3); __pyx_t_23 = 0; __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_26, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_26 = PyTuple_New(1+1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_26, 0+1, __pyx_t_7); __pyx_t_7 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_26, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_reshape); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_7 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_6))) { __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_7)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); __pyx_t_25 = 1; } } __pyx_t_1 = PyTuple_New(4+__pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_7) { __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); __pyx_t_7 = NULL; } __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_25, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_25, __pyx_t_26); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_25, __pyx_int_3); __Pyx_INCREF(__pyx_int_3); __Pyx_GIVEREF(__pyx_int_3); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_25, __pyx_int_3); __pyx_t_8 = 0; __pyx_t_26 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9217, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9217, __pyx_L1_error) __pyx_t_22 = ((PyArrayObject *)__pyx_t_9); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_ROT.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ROT.rcbuffer->pybuffer, (PyObject*)__pyx_t_22, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 4, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_ROT.rcbuffer->pybuffer, (PyObject*)__pyx_v_ROT, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 4, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_27); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_29); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_27, __pyx_t_28, __pyx_t_29); } } __pyx_pybuffernd_ROT.diminfo[0].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_ROT.diminfo[0].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_ROT.diminfo[1].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_ROT.diminfo[1].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_ROT.diminfo[2].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_ROT.diminfo[2].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[2]; __pyx_pybuffernd_ROT.diminfo[3].strides = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.strides[3]; __pyx_pybuffernd_ROT.diminfo[3].shape = __pyx_pybuffernd_ROT.rcbuffer->pybuffer.shape[3]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9217, __pyx_L1_error) } __pyx_t_22 = 0; __Pyx_DECREF_SET(__pyx_v_ROT, ((PyArrayObject *)__pyx_t_9)); __pyx_t_9 = 0;
9218:
+9219: plantseed(myseed)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_plantseed); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_myseed); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_26) { __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9219, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_9); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_26); __pyx_t_26 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9219, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
+9220: Colcanvas = COLOR.EULToCol(EUL)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_COLOR); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_EULToCol); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_6) { __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_8, ((PyObject *)__pyx_v_EUL)); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_INCREF(((PyObject *)__pyx_v_EUL)); __Pyx_GIVEREF(((PyObject *)__pyx_v_EUL)); PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_EUL)); __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_1, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9220, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9220, __pyx_L1_error) __pyx_t_17 = ((PyArrayObject *)__pyx_t_9); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer, (PyObject*)__pyx_t_17, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 3, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_29, &__pyx_t_28, &__pyx_t_27); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer, (PyObject*)__pyx_v_Colcanvas, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t, PyBUF_FORMAT| PyBUF_STRIDES, 3, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_29); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_27); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_29, __pyx_t_28, __pyx_t_27); } } __pyx_pybuffernd_Colcanvas.diminfo[0].strides = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Colcanvas.diminfo[0].shape = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Colcanvas.diminfo[1].strides = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Colcanvas.diminfo[1].shape = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.shape[1]; __pyx_pybuffernd_Colcanvas.diminfo[2].strides = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.strides[2]; __pyx_pybuffernd_Colcanvas.diminfo[2].shape = __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.shape[2]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9220, __pyx_L1_error) } __pyx_t_17 = 0; __Pyx_DECREF_SET(__pyx_v_Colcanvas, ((PyArrayObject *)__pyx_t_9)); __pyx_t_9 = 0;
+9221: setwindows(sa);tic = time.time()
__pyx_f_9libEVOLVE_setwindows(__pyx_v_sa); __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9221, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (__pyx_t_8) { __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9221, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } else { __pyx_t_9 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9221, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_30 = __pyx_PyFloat_AsDouble(__pyx_t_9); if (unlikely((__pyx_t_30 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 9221, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_v_tic = __pyx_t_30;
9222:
+9223: if pdelNxy == []:
__pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9223, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = PyObject_RichCompare(__pyx_v_pdelNxy, __pyx_t_9, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9223, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_31 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_31 < 0)) __PYX_ERR(0, 9223, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_31) { /* … */ goto __pyx_L3; }
+9224: [X, Y] = randindex2D(m, n, p)
__pyx_t_1 = __pyx_f_9libEVOLVE_randindex2D(__pyx_v_m, __pyx_v_n, __pyx_v_p); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9224, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 9224, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_9 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_9 = PyList_GET_ITEM(sequence, 0);
__pyx_t_8 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(__pyx_t_8);
#else
__pyx_t_9 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9224, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9224, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_6 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9224, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_32 = Py_TYPE(__pyx_t_6)->tp_iternext;
index = 0; __pyx_t_9 = __pyx_t_32(__pyx_t_6); if (unlikely(!__pyx_t_9)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
index = 1; __pyx_t_8 = __pyx_t_32(__pyx_t_6); if (unlikely(!__pyx_t_8)) goto __pyx_L4_unpacking_failed;
__Pyx_GOTREF(__pyx_t_8);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_32(__pyx_t_6), 2) < 0) __PYX_ERR(0, 9224, __pyx_L1_error)
__pyx_t_32 = NULL;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
goto __pyx_L5_unpacking_done;
__pyx_L4_unpacking_failed:;
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_32 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 9224, __pyx_L1_error)
__pyx_L5_unpacking_done:;
}
if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9224, __pyx_L1_error)
if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9224, __pyx_L1_error)
__pyx_t_13 = ((PyArrayObject *)__pyx_t_9);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_5 < 0)) {
PyErr_Fetch(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_27); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_29);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_27, __pyx_t_28, __pyx_t_29);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9224, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_9));
__pyx_t_9 = 0;
__pyx_t_14 = ((PyArrayObject *)__pyx_t_8);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_5 < 0)) {
PyErr_Fetch(&__pyx_t_29, &__pyx_t_28, &__pyx_t_27);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_29); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_27);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_29, __pyx_t_28, __pyx_t_27);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9224, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_8));
__pyx_t_8 = 0;
9225: else:
+9226: X, Y = met.MH2D(pdelNxy, 0, m, 0, n, p, 1)
/*else*/ {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_met); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_MH2D); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
__pyx_t_7 = NULL;
__pyx_t_25 = 0;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_9))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_9);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_9, function);
__pyx_t_25 = 1;
}
}
__pyx_t_23 = PyTuple_New(7+__pyx_t_25); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
if (__pyx_t_7) {
__Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_7); __pyx_t_7 = NULL;
}
__Pyx_INCREF(__pyx_v_pdelNxy);
__Pyx_GIVEREF(__pyx_v_pdelNxy);
PyTuple_SET_ITEM(__pyx_t_23, 0+__pyx_t_25, __pyx_v_pdelNxy);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 1+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_8);
PyTuple_SET_ITEM(__pyx_t_23, 2+__pyx_t_25, __pyx_t_8);
__Pyx_INCREF(__pyx_int_0);
__Pyx_GIVEREF(__pyx_int_0);
PyTuple_SET_ITEM(__pyx_t_23, 3+__pyx_t_25, __pyx_int_0);
__Pyx_GIVEREF(__pyx_t_6);
PyTuple_SET_ITEM(__pyx_t_23, 4+__pyx_t_25, __pyx_t_6);
__Pyx_GIVEREF(__pyx_t_26);
PyTuple_SET_ITEM(__pyx_t_23, 5+__pyx_t_25, __pyx_t_26);
__Pyx_INCREF(__pyx_int_1);
__Pyx_GIVEREF(__pyx_int_1);
PyTuple_SET_ITEM(__pyx_t_23, 6+__pyx_t_25, __pyx_int_1);
__pyx_t_8 = 0;
__pyx_t_6 = 0;
__pyx_t_26 = 0;
__pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_23, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
PyObject* sequence = __pyx_t_1;
#if CYTHON_COMPILING_IN_CPYTHON
Py_ssize_t size = Py_SIZE(sequence);
#else
Py_ssize_t size = PySequence_Size(sequence);
#endif
if (unlikely(size != 2)) {
if (size > 2) __Pyx_RaiseTooManyValuesError(2);
else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
__PYX_ERR(0, 9226, __pyx_L1_error)
}
#if CYTHON_COMPILING_IN_CPYTHON
if (likely(PyTuple_CheckExact(sequence))) {
__pyx_t_9 = PyTuple_GET_ITEM(sequence, 0);
__pyx_t_23 = PyTuple_GET_ITEM(sequence, 1);
} else {
__pyx_t_9 = PyList_GET_ITEM(sequence, 0);
__pyx_t_23 = PyList_GET_ITEM(sequence, 1);
}
__Pyx_INCREF(__pyx_t_9);
__Pyx_INCREF(__pyx_t_23);
#else
__pyx_t_9 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_9);
__pyx_t_23 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
#endif
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
} else {
Py_ssize_t index = -1;
__pyx_t_26 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9226, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
__pyx_t_32 = Py_TYPE(__pyx_t_26)->tp_iternext;
index = 0; __pyx_t_9 = __pyx_t_32(__pyx_t_26); if (unlikely(!__pyx_t_9)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_9);
index = 1; __pyx_t_23 = __pyx_t_32(__pyx_t_26); if (unlikely(!__pyx_t_23)) goto __pyx_L6_unpacking_failed;
__Pyx_GOTREF(__pyx_t_23);
if (__Pyx_IternextUnpackEndCheck(__pyx_t_32(__pyx_t_26), 2) < 0) __PYX_ERR(0, 9226, __pyx_L1_error)
__pyx_t_32 = NULL;
__Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
goto __pyx_L7_unpacking_done;
__pyx_L6_unpacking_failed:;
__Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
__pyx_t_32 = NULL;
if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
__PYX_ERR(0, 9226, __pyx_L1_error)
__pyx_L7_unpacking_done:;
}
if (!(likely(((__pyx_t_9) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_9, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9226, __pyx_L1_error)
if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9226, __pyx_L1_error)
__pyx_t_13 = ((PyArrayObject *)__pyx_t_9);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer);
__pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_5 < 0)) {
PyErr_Fetch(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_27); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_29);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_27, __pyx_t_28, __pyx_t_29);
}
}
__pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9226, __pyx_L1_error)
}
__pyx_t_13 = 0;
__Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_9));
__pyx_t_9 = 0;
__pyx_t_14 = ((PyArrayObject *)__pyx_t_23);
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer);
__pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
if (unlikely(__pyx_t_5 < 0)) {
PyErr_Fetch(&__pyx_t_29, &__pyx_t_28, &__pyx_t_27);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_29); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_27);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_29, __pyx_t_28, __pyx_t_27);
}
}
__pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0];
if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9226, __pyx_L1_error)
}
__pyx_t_14 = 0;
__Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_23));
__pyx_t_23 = 0;
}
__pyx_L3:;
9227:
+9228: if labelsorted == 1:
__pyx_t_31 = ((__pyx_v_labelsorted == 1) != 0);
if (__pyx_t_31) {
/* … */
}
+9229: X, Y = labelsort(n, X, Y)
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_labelsort); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_9 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_26 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_6 = PyTuple_New(3+__pyx_t_25); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0+__pyx_t_25, __pyx_t_9); __Pyx_INCREF(((PyObject *)__pyx_v_X)); __Pyx_GIVEREF(((PyObject *)__pyx_v_X)); PyTuple_SET_ITEM(__pyx_t_6, 1+__pyx_t_25, ((PyObject *)__pyx_v_X)); __Pyx_INCREF(((PyObject *)__pyx_v_Y)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Y)); PyTuple_SET_ITEM(__pyx_t_6, 2+__pyx_t_25, ((PyObject *)__pyx_v_Y)); __pyx_t_9 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 9229, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_23 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_23 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(__pyx_t_6); #else __pyx_t_23 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); #endif __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9229, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_32 = Py_TYPE(__pyx_t_9)->tp_iternext; index = 0; __pyx_t_23 = __pyx_t_32(__pyx_t_9); if (unlikely(!__pyx_t_23)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_23); index = 1; __pyx_t_6 = __pyx_t_32(__pyx_t_9); if (unlikely(!__pyx_t_6)) goto __pyx_L9_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); if (__Pyx_IternextUnpackEndCheck(__pyx_t_32(__pyx_t_9), 2) < 0) __PYX_ERR(0, 9229, __pyx_L1_error) __pyx_t_32 = NULL; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; goto __pyx_L10_unpacking_done; __pyx_L9_unpacking_failed:; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_32 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 9229, __pyx_L1_error) __pyx_L10_unpacking_done:; } if (!(likely(((__pyx_t_23) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_23, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9229, __pyx_L1_error) if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9229, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_23); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_27); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_29); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_27, __pyx_t_28, __pyx_t_29); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9229, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_23)); __pyx_t_23 = 0; __pyx_t_14 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_29, &__pyx_t_28, &__pyx_t_27); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_29); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_27); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_29, __pyx_t_28, __pyx_t_27); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9229, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
9230:
9231:
+9232: Iter = 1
__pyx_v_Iter = 1;
+9233: Rab2 = Rab ** 2
__pyx_v_Rab2 = powf(__pyx_v_Rab, 2.0);
+9234: Rac2 = Rac ** 2
__pyx_v_Rac2 = powf(__pyx_v_Rac, 2.0);
9235:
9236:
+9237: while True:
while (1) {
+9238: aAXIS = 0
__pyx_v_aAXIS = 0;
+9239: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_33 = 0; __pyx_t_33 < __pyx_t_2; __pyx_t_33+=1) {
__pyx_v_k = __pyx_t_33;
+9240: I[X[k], Y[k]] = k + 1
__pyx_t_34 = __pyx_v_k;
__pyx_t_35 = __pyx_v_k;
__pyx_t_36 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_37 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_Y.diminfo[0].strides));
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_37, __pyx_pybuffernd_I.diminfo[1].strides) = (__pyx_v_k + 1);
+9241: Rot[k, 0, 0] = ROT[X[k], Y[k], 0, 0]
__pyx_t_38 = __pyx_v_k;
__pyx_t_39 = __pyx_v_k;
__pyx_t_40 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_41 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_39, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_42 = 0;
__pyx_t_43 = 0;
__pyx_t_44 = __pyx_v_k;
__pyx_t_45 = 0;
__pyx_t_46 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_44, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_45, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_46, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_40, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_41, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_42, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_43, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9242: Rot[k, 0, 1] = ROT[X[k], Y[k], 0, 1]
__pyx_t_47 = __pyx_v_k;
__pyx_t_48 = __pyx_v_k;
__pyx_t_49 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_47, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_50 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_48, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_51 = 0;
__pyx_t_52 = 1;
__pyx_t_53 = __pyx_v_k;
__pyx_t_54 = 0;
__pyx_t_55 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_53, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_54, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_55, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_49, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_50, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_51, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_52, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9243: Rot[k, 0, 2] = ROT[X[k], Y[k], 0, 2]
__pyx_t_56 = __pyx_v_k;
__pyx_t_57 = __pyx_v_k;
__pyx_t_58 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_56, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_59 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_57, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_60 = 0;
__pyx_t_61 = 2;
__pyx_t_62 = __pyx_v_k;
__pyx_t_63 = 0;
__pyx_t_64 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_62, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_63, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_64, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_58, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_59, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_60, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_61, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9244: Rot[k, 1, 0] = ROT[X[k], Y[k], 1, 0]
__pyx_t_65 = __pyx_v_k;
__pyx_t_66 = __pyx_v_k;
__pyx_t_67 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_65, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_68 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_66, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_69 = 1;
__pyx_t_70 = 0;
__pyx_t_71 = __pyx_v_k;
__pyx_t_72 = 1;
__pyx_t_73 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_71, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_72, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_73, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_67, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_68, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_69, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_70, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9245: Rot[k, 1, 1] = ROT[X[k], Y[k], 1, 1]
__pyx_t_74 = __pyx_v_k;
__pyx_t_75 = __pyx_v_k;
__pyx_t_76 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_74, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_77 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_75, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_78 = 1;
__pyx_t_79 = 1;
__pyx_t_80 = __pyx_v_k;
__pyx_t_81 = 1;
__pyx_t_82 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_80, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_81, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_82, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_76, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_77, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_78, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_79, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9246: Rot[k, 1, 2] = ROT[X[k], Y[k], 1, 2]
__pyx_t_83 = __pyx_v_k;
__pyx_t_84 = __pyx_v_k;
__pyx_t_85 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_83, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_86 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_84, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_87 = 1;
__pyx_t_88 = 2;
__pyx_t_89 = __pyx_v_k;
__pyx_t_90 = 1;
__pyx_t_91 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_89, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_90, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_91, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_85, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_86, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_87, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_88, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9247: Rot[k, 2, 0] = ROT[X[k], Y[k], 2, 0]
__pyx_t_92 = __pyx_v_k;
__pyx_t_93 = __pyx_v_k;
__pyx_t_94 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_92, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_95 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_93, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_96 = 2;
__pyx_t_97 = 0;
__pyx_t_98 = __pyx_v_k;
__pyx_t_99 = 2;
__pyx_t_100 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_98, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_99, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_100, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_94, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_95, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_96, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_97, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9248: Rot[k, 2, 1] = ROT[X[k], Y[k], 2, 1]
__pyx_t_101 = __pyx_v_k;
__pyx_t_102 = __pyx_v_k;
__pyx_t_103 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_101, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_104 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_102, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_105 = 2;
__pyx_t_106 = 1;
__pyx_t_107 = __pyx_v_k;
__pyx_t_108 = 2;
__pyx_t_109 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_107, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_108, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_109, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_103, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_104, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_105, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_106, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9249: Rot[k, 2, 2] = ROT[X[k], Y[k], 2, 2]
__pyx_t_110 = __pyx_v_k;
__pyx_t_111 = __pyx_v_k;
__pyx_t_112 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_110, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_113 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_111, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_114 = 2;
__pyx_t_115 = 2;
__pyx_t_116 = __pyx_v_k;
__pyx_t_117 = 2;
__pyx_t_118 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_116, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_117, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_118, __pyx_pybuffernd_Rot.diminfo[2].strides) = (*__Pyx_BufPtrStrided4d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_ROT.rcbuffer->pybuffer.buf, __pyx_t_112, __pyx_pybuffernd_ROT.diminfo[0].strides, __pyx_t_113, __pyx_pybuffernd_ROT.diminfo[1].strides, __pyx_t_114, __pyx_pybuffernd_ROT.diminfo[2].strides, __pyx_t_115, __pyx_pybuffernd_ROT.diminfo[3].strides));
+9250: col[k, 0] = Colcanvas[X[k], Y[k], 0]
__pyx_t_119 = __pyx_v_k;
__pyx_t_120 = __pyx_v_k;
__pyx_t_121 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_119, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_122 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_120, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_123 = 0;
__pyx_t_124 = __pyx_v_k;
__pyx_t_125 = 0;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_124, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_125, __pyx_pybuffernd_col.diminfo[1].strides) = (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.buf, __pyx_t_121, __pyx_pybuffernd_Colcanvas.diminfo[0].strides, __pyx_t_122, __pyx_pybuffernd_Colcanvas.diminfo[1].strides, __pyx_t_123, __pyx_pybuffernd_Colcanvas.diminfo[2].strides));
+9251: col[k, 1] = Colcanvas[X[k], Y[k], 1]
__pyx_t_126 = __pyx_v_k;
__pyx_t_127 = __pyx_v_k;
__pyx_t_128 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_126, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_129 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_127, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_130 = 1;
__pyx_t_131 = __pyx_v_k;
__pyx_t_132 = 1;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_131, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_132, __pyx_pybuffernd_col.diminfo[1].strides) = (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.buf, __pyx_t_128, __pyx_pybuffernd_Colcanvas.diminfo[0].strides, __pyx_t_129, __pyx_pybuffernd_Colcanvas.diminfo[1].strides, __pyx_t_130, __pyx_pybuffernd_Colcanvas.diminfo[2].strides));
+9252: col[k, 2] = Colcanvas[X[k], Y[k], 2]
__pyx_t_133 = __pyx_v_k;
__pyx_t_134 = __pyx_v_k;
__pyx_t_135 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_133, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_136 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_134, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_137 = 2;
__pyx_t_138 = __pyx_v_k;
__pyx_t_139 = 2;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_138, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_139, __pyx_pybuffernd_col.diminfo[1].strides) = (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Colcanvas.rcbuffer->pybuffer.buf, __pyx_t_135, __pyx_pybuffernd_Colcanvas.diminfo[0].strides, __pyx_t_136, __pyx_pybuffernd_Colcanvas.diminfo[1].strides, __pyx_t_137, __pyx_pybuffernd_Colcanvas.diminfo[2].strides));
+9253: Col[X[k], Y[k], 0] = col[k, 0]
__pyx_t_140 = __pyx_v_k;
__pyx_t_141 = 0;
__pyx_t_142 = __pyx_v_k;
__pyx_t_143 = __pyx_v_k;
__pyx_t_144 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_142, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_145 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_143, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_146 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_144, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_145, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_146, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_140, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_141, __pyx_pybuffernd_col.diminfo[1].strides));
+9254: Col[X[k], Y[k], 1] = col[k, 1]
__pyx_t_147 = __pyx_v_k;
__pyx_t_148 = 1;
__pyx_t_149 = __pyx_v_k;
__pyx_t_150 = __pyx_v_k;
__pyx_t_151 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_149, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_152 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_150, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_153 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_151, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_152, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_153, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_147, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_148, __pyx_pybuffernd_col.diminfo[1].strides));
+9255: Col[X[k], Y[k], 2] = col[k, 2]
__pyx_t_154 = __pyx_v_k;
__pyx_t_155 = 2;
__pyx_t_156 = __pyx_v_k;
__pyx_t_157 = __pyx_v_k;
__pyx_t_158 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_156, __pyx_pybuffernd_X.diminfo[0].strides));
__pyx_t_159 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_157, __pyx_pybuffernd_Y.diminfo[0].strides));
__pyx_t_160 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_158, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_159, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_160, __pyx_pybuffernd_Col.diminfo[2].strides) = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_154, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_155, __pyx_pybuffernd_col.diminfo[1].strides));
}
9256:
+9257: showriteframe(sa, sf, fd, aAXIS, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_aAXIS, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
9258:
+9259: aAXIS = 1
__pyx_v_aAXIS = 1;
9260:
9261:
+9262: for k in range(p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_33 = 0; __pyx_t_33 < __pyx_t_2; __pyx_t_33+=1) {
__pyx_v_k = __pyx_t_33;
+9263: A = Rot[k, 0, 0] ** 2 + Rab2 * Rot[k, 1, 0] ** 2 + Rac2 * Rot[k, 2, 0] ** 2
__pyx_t_161 = __pyx_v_k;
__pyx_t_162 = 0;
__pyx_t_163 = 0;
__pyx_t_164 = __pyx_v_k;
__pyx_t_165 = 1;
__pyx_t_166 = 0;
__pyx_t_167 = __pyx_v_k;
__pyx_t_168 = 2;
__pyx_t_169 = 0;
__pyx_v_A = ((pow((*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_161, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_162, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_163, __pyx_pybuffernd_Rot.diminfo[2].strides)), 2.0) + (__pyx_v_Rab2 * pow((*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_164, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_165, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_166, __pyx_pybuffernd_Rot.diminfo[2].strides)), 2.0))) + (__pyx_v_Rac2 * pow((*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_167, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_168, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_169, __pyx_pybuffernd_Rot.diminfo[2].strides)), 2.0)));
+9264: B = Rot[k, 0, 1] ** 2 + Rab2 * Rot[k, 1, 1] ** 2 + Rac2 * Rot[k, 2, 1] ** 2
__pyx_t_170 = __pyx_v_k;
__pyx_t_171 = 0;
__pyx_t_172 = 1;
__pyx_t_173 = __pyx_v_k;
__pyx_t_174 = 1;
__pyx_t_175 = 1;
__pyx_t_176 = __pyx_v_k;
__pyx_t_177 = 2;
__pyx_t_178 = 1;
__pyx_v_B = ((pow((*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_170, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_171, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_172, __pyx_pybuffernd_Rot.diminfo[2].strides)), 2.0) + (__pyx_v_Rab2 * pow((*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_173, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_174, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_175, __pyx_pybuffernd_Rot.diminfo[2].strides)), 2.0))) + (__pyx_v_Rac2 * pow((*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_176, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_177, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_178, __pyx_pybuffernd_Rot.diminfo[2].strides)), 2.0)));
+9265: H = Rot[k, 0, 0] * Rot[k, 0, 1] + Rab2 * Rot[k, 1, 0] * Rot[k, 1, 1] + Rac2 * Rot[k, 2, 0] * Rot[k, 2, 1]
__pyx_t_179 = __pyx_v_k;
__pyx_t_180 = 0;
__pyx_t_181 = 0;
__pyx_t_182 = __pyx_v_k;
__pyx_t_183 = 0;
__pyx_t_184 = 1;
__pyx_t_185 = __pyx_v_k;
__pyx_t_186 = 1;
__pyx_t_187 = 0;
__pyx_t_188 = __pyx_v_k;
__pyx_t_189 = 1;
__pyx_t_190 = 1;
__pyx_t_191 = __pyx_v_k;
__pyx_t_192 = 2;
__pyx_t_193 = 0;
__pyx_t_194 = __pyx_v_k;
__pyx_t_195 = 2;
__pyx_t_196 = 1;
__pyx_v_H = ((((*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_179, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_180, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_181, __pyx_pybuffernd_Rot.diminfo[2].strides)) * (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_182, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_183, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_184, __pyx_pybuffernd_Rot.diminfo[2].strides))) + ((__pyx_v_Rab2 * (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_185, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_186, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_187, __pyx_pybuffernd_Rot.diminfo[2].strides))) * (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_188, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_189, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_190, __pyx_pybuffernd_Rot.diminfo[2].strides)))) + ((__pyx_v_Rac2 * (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_191, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_192, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_193, __pyx_pybuffernd_Rot.diminfo[2].strides))) * (*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Rot.rcbuffer->pybuffer.buf, __pyx_t_194, __pyx_pybuffernd_Rot.diminfo[0].strides, __pyx_t_195, __pyx_pybuffernd_Rot.diminfo[1].strides, __pyx_t_196, __pyx_pybuffernd_Rot.diminfo[2].strides))));
9266:
+9267: Theta[k] = 0.5 * math.atan2(2 * H, (A - B))
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_atan2); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble((2.0 * __pyx_v_H)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_9 = PyFloat_FromDouble((__pyx_v_A - __pyx_v_B)); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_26 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_23); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_23, function); __pyx_t_25 = 1; } } __pyx_t_8 = PyTuple_New(2+__pyx_t_25); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); if (__pyx_t_26) { __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_26); __pyx_t_26 = NULL; } __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_25, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_25, __pyx_t_9); __pyx_t_6 = 0; __pyx_t_9 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = PyNumber_Multiply(__pyx_float_0_5, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_197 = __pyx_PyFloat_AsDouble(__pyx_t_23); if (unlikely((__pyx_t_197 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 9267, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_198 = __pyx_v_k; *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_198, __pyx_pybuffernd_Theta.diminfo[0].strides) = __pyx_t_197;
+9268: c = math.cos(Theta[k])
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_cos); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_199 = __pyx_v_k; __pyx_t_1 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_199, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_9)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_9); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_9) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9268, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_9); __pyx_t_9 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9268, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_23); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 9268, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_c = __pyx_t_3;
+9269: s = math.sin(Theta[k])
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_sin); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_200 = __pyx_v_k; __pyx_t_8 = PyFloat_FromDouble((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_200, __pyx_pybuffernd_Theta.diminfo[0].strides))); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_8); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9269, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9269, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_23); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 9269, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_s = __pyx_t_3;
+9270: c2 = c ** 2
__pyx_v_c2 = powf(__pyx_v_c, 2.0);
+9271: s2 = s ** 2
__pyx_v_s2 = powf(__pyx_v_s, 2.0);
+9272: hsc = 2 * H * s * c
__pyx_v_hsc = (((2.0 * __pyx_v_H) * __pyx_v_s) * __pyx_v_c);
+9273: cx = A * c2 + B * s2 + hsc
__pyx_v_cx = (((__pyx_v_A * __pyx_v_c2) + (__pyx_v_B * __pyx_v_s2)) + __pyx_v_hsc);
+9274: cy = B * c2 + A * s2 - hsc
__pyx_v_cy = (((__pyx_v_B * __pyx_v_c2) + (__pyx_v_A * __pyx_v_s2)) - __pyx_v_hsc);
9275:
+9276: if cx <= cy:
__pyx_t_31 = ((__pyx_v_cx <= __pyx_v_cy) != 0);
if (__pyx_t_31) {
/* … */
goto __pyx_L17;
}
+9277: major2d[k] = 1 / math.sqrt(cx)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble(__pyx_v_cx); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_9))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_9); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_9, function); } } if (!__pyx_t_8) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_6); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_1, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = __Pyx_PyNumber_Divide(__pyx_int_1, __pyx_t_23); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_197 = __pyx_PyFloat_AsDouble(__pyx_t_9); if (unlikely((__pyx_t_197 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 9277, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_201 = __pyx_v_k; *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_major2d.rcbuffer->pybuffer.buf, __pyx_t_201, __pyx_pybuffernd_major2d.diminfo[0].strides) = __pyx_t_197;
+9278: minor2d[k] = 1 / math.sqrt(cy)
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = PyFloat_FromDouble(__pyx_v_cy); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_6) { __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_23); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_GOTREF(__pyx_t_9); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = __Pyx_PyNumber_Divide(__pyx_int_1, __pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_197 = __pyx_PyFloat_AsDouble(__pyx_t_1); if (unlikely((__pyx_t_197 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 9278, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_202 = __pyx_v_k; *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_minor2d.rcbuffer->pybuffer.buf, __pyx_t_202, __pyx_pybuffernd_minor2d.diminfo[0].strides) = __pyx_t_197;
9279: else:
+9280: Theta[k] = pi / 2 + Theta[k]
/*else*/ {
__pyx_t_203 = __pyx_v_k;
__pyx_t_204 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_204, __pyx_pybuffernd_Theta.diminfo[0].strides) = ((__pyx_v_9libEVOLVE_pi / 2.0) + (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_203, __pyx_pybuffernd_Theta.diminfo[0].strides)));
+9281: major2d[k] = 1 / math.sqrt(cy)
__pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = PyFloat_FromDouble(__pyx_v_cy); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_23 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_23) { __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_9); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_GOTREF(__pyx_t_1); } else { __pyx_t_6 = PyTuple_New(1+1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_23); __pyx_t_23 = NULL; __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_6, 0+1, __pyx_t_9); __pyx_t_9 = 0; __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = __Pyx_PyNumber_Divide(__pyx_int_1, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_197 = __pyx_PyFloat_AsDouble(__pyx_t_8); if (unlikely((__pyx_t_197 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 9281, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_205 = __pyx_v_k; *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_major2d.rcbuffer->pybuffer.buf, __pyx_t_205, __pyx_pybuffernd_major2d.diminfo[0].strides) = __pyx_t_197;
+9282: minor2d[k] = 1 / math.sqrt(cx)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_cx); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_9)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_9); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_9) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_23 = PyTuple_New(1+1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_23, 0, __pyx_t_9); __pyx_t_9 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_23, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_23, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyNumber_Divide(__pyx_int_1, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_197 = __pyx_PyFloat_AsDouble(__pyx_t_6); if (unlikely((__pyx_t_197 == (npy_float64)-1) && PyErr_Occurred())) __PYX_ERR(0, 9282, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_206 = __pyx_v_k; *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_minor2d.rcbuffer->pybuffer.buf, __pyx_t_206, __pyx_pybuffernd_minor2d.diminfo[0].strides) = __pyx_t_197; } __pyx_L17:; }
9283:
+9284: while cv2.countNonZero(a) > 0:
while (1) {
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_cv2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_8);
__pyx_t_23 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_countNonZero); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_23);
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
__pyx_t_8 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_23))) {
__pyx_t_8 = PyMethod_GET_SELF(__pyx_t_23);
if (likely(__pyx_t_8)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_23);
__Pyx_INCREF(__pyx_t_8);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_23, function);
}
}
if (!__pyx_t_8) {
__pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_23, ((PyObject *)__pyx_v_a)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
} else {
__pyx_t_1 = PyTuple_New(1+1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_1);
__Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_8); __pyx_t_8 = NULL;
__Pyx_INCREF(((PyObject *)__pyx_v_a));
__Pyx_GIVEREF(((PyObject *)__pyx_v_a));
PyTuple_SET_ITEM(__pyx_t_1, 0+1, ((PyObject *)__pyx_v_a));
__pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_23, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9284, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_6);
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
}
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
__pyx_t_23 = PyObject_RichCompare(__pyx_t_6, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_23); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9284, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
__pyx_t_31 = __Pyx_PyObject_IsTrue(__pyx_t_23); if (unlikely(__pyx_t_31 < 0)) __PYX_ERR(0, 9284, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0;
if (!__pyx_t_31) break;
+9285: aAXIS = aAXIS + 1
__pyx_v_aAXIS = (__pyx_v_aAXIS + 1);
+9286: for k in range(0, p):
__pyx_t_2 = __pyx_v_p;
for (__pyx_t_33 = 0; __pyx_t_33 < __pyx_t_2; __pyx_t_33+=1) {
__pyx_v_k = __pyx_t_33;
+9287: if a[k] == 1:
__pyx_t_207 = __pyx_v_k;
__pyx_t_31 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_207, __pyx_pybuffernd_a.diminfo[0].strides)) == 1) != 0);
if (__pyx_t_31) {
/* … */
}
}
+9288: a[k] = 0
__pyx_t_208 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_208, __pyx_pybuffernd_a.diminfo[0].strides) = 0;
+9289: xo = X[k]
__pyx_t_209 = __pyx_v_k;
__pyx_v_xo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_X.rcbuffer->pybuffer.buf, __pyx_t_209, __pyx_pybuffernd_X.diminfo[0].strides));
+9290: yo = Y[k]
__pyx_t_210 = __pyx_v_k;
__pyx_v_yo = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_Y.rcbuffer->pybuffer.buf, __pyx_t_210, __pyx_pybuffernd_Y.diminfo[0].strides));
+9291: theta = Theta[k]
__pyx_t_211 = __pyx_v_k;
__pyx_v_theta = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Theta.rcbuffer->pybuffer.buf, __pyx_t_211, __pyx_pybuffernd_Theta.diminfo[0].strides));
+9292: c = math.cos(theta)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9292, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_cos); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9292, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9292, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_1))) { __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_1); if (likely(__pyx_t_8)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); __Pyx_INCREF(__pyx_t_8); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_1, function); } } if (!__pyx_t_8) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9292, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_9 = PyTuple_New(1+1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9292, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); __pyx_t_8 = NULL; __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_9, 0+1, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9292, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_23); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 9292, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_v_c = __pyx_t_3;
+9293: s = -math.sin(theta)
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sin); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble(__pyx_v_theta); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_9))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_9); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_9, function); } } if (!__pyx_t_6) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_9, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_8 = PyTuple_New(1+1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_8, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_8, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; } __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = PyNumber_Negative(__pyx_t_23); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_3 = __pyx_PyFloat_AsFloat(__pyx_t_9); if (unlikely((__pyx_t_3 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 9293, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_v_s = __pyx_t_3;
+9294: Io = I[xo, yo]
__pyx_t_212 = __pyx_v_xo;
__pyx_t_213 = __pyx_v_yo;
__pyx_v_Io = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_212, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_213, __pyx_pybuffernd_I.diminfo[1].strides));
+9295: MAJ = aAXIS * major2d[k]
__pyx_t_214 = __pyx_v_k;
__pyx_v_MAJ = (__pyx_v_aAXIS * (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_major2d.rcbuffer->pybuffer.buf, __pyx_t_214, __pyx_pybuffernd_major2d.diminfo[0].strides)));
+9296: MIN = aAXIS * minor2d[k]
__pyx_t_215 = __pyx_v_k;
__pyx_v_MIN = (__pyx_v_aAXIS * (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_minor2d.rcbuffer->pybuffer.buf, __pyx_t_215, __pyx_pybuffernd_minor2d.diminfo[0].strides)));
+9297: delX = math.ceil(math.sqrt((MAJ * c) ** 2 + (MIN * s) ** 2))
__pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_ceil); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyFloat_FromDouble((powf((__pyx_v_MAJ * __pyx_v_c), 2.0) + powf((__pyx_v_MIN * __pyx_v_s), 2.0))); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_26 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_26)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_26); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_26) { __pyx_t_23 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GOTREF(__pyx_t_23); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_26); __pyx_t_26 = NULL; __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_1); __pyx_t_1 = 0; __pyx_t_23 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_7, NULL); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_8))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_8); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_8, function); } } if (!__pyx_t_6) { __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_23); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_GOTREF(__pyx_t_9); } else { __pyx_t_7 = PyTuple_New(1+1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_7, 0+1, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_216 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_9); if (unlikely((__pyx_t_216 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9297, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_v_delX = __pyx_t_216;
+9298: delY = math.ceil(math.sqrt((MAJ * s) ** 2 + (MIN * c) ** 2))
__pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_ceil); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __pyx_t_23 = __Pyx_GetModuleGlobalName(__pyx_n_s_math); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_sqrt); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __pyx_t_23 = PyFloat_FromDouble((powf((__pyx_v_MAJ * __pyx_v_s), 2.0) + powf((__pyx_v_MIN * __pyx_v_c), 2.0))); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_6))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_6); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_6, function); } } if (!__pyx_t_1) { __pyx_t_8 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_23); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_DECREF(__pyx_t_23); __pyx_t_23 = 0; __Pyx_GOTREF(__pyx_t_8); } else { __pyx_t_26 = PyTuple_New(1+1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_GIVEREF(__pyx_t_1); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_1); __pyx_t_1 = NULL; __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_26, 0+1, __pyx_t_23); __pyx_t_23 = 0; __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_26, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_6)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (!__pyx_t_6) { __pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_GOTREF(__pyx_t_9); } else { __pyx_t_26 = PyTuple_New(1+1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_26, 0, __pyx_t_6); __pyx_t_6 = NULL; __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_26, 0+1, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_26, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; } __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_216 = __Pyx_PyInt_As_PY_LONG_LONG(__pyx_t_9); if (unlikely((__pyx_t_216 == (PY_LONG_LONG)-1) && PyErr_Occurred())) __PYX_ERR(0, 9298, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_v_delY = __pyx_t_216;
+9299: red = col[k, 0]
__pyx_t_216 = __pyx_v_k;
__pyx_t_217 = 0;
__pyx_v_red = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_216, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_217, __pyx_pybuffernd_col.diminfo[1].strides));
+9300: green = col[k, 1]
__pyx_t_218 = __pyx_v_k;
__pyx_t_219 = 1;
__pyx_v_green = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_218, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_219, __pyx_pybuffernd_col.diminfo[1].strides));
+9301: blue = col[k, 2]
__pyx_t_220 = __pyx_v_k;
__pyx_t_221 = 2;
__pyx_v_blue = (*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_col.rcbuffer->pybuffer.buf, __pyx_t_220, __pyx_pybuffernd_col.diminfo[0].strides, __pyx_t_221, __pyx_pybuffernd_col.diminfo[1].strides));
9302:
+9303: for deli in range(0, delX + 1):
__pyx_t_222 = (__pyx_v_delX + 1);
for (__pyx_t_223 = 0; __pyx_t_223 < __pyx_t_222; __pyx_t_223+=1) {
__pyx_v_deli = __pyx_t_223;
+9304: for delj in range(0, delY + 1):
__pyx_t_224 = (__pyx_v_delY + 1);
for (__pyx_t_225 = 0; __pyx_t_225 < __pyx_t_224; __pyx_t_225+=1) {
__pyx_v_delj = __pyx_t_225;
+9305: if ((deli * c - delj * s) / MAJ) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_31 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_MAJ), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_31) {
/* … */
}
}
}
9306:
+9307: i, j = xo + deli, yo + delj
__pyx_t_226 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_227 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_226;
__pyx_v_j = __pyx_t_227;
+9308: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_228 = (0 <= __pyx_v_i);
if (__pyx_t_228) {
__pyx_t_228 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_229 = (__pyx_t_228 != 0);
if (__pyx_t_229) {
} else {
__pyx_t_31 = __pyx_t_229;
goto __pyx_L29_bool_binop_done;
}
__pyx_t_229 = (0 <= __pyx_v_j);
if (__pyx_t_229) {
__pyx_t_229 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_228 = (__pyx_t_229 != 0);
__pyx_t_31 = __pyx_t_228;
__pyx_L29_bool_binop_done:;
if (__pyx_t_31) {
/* … */
}
+9309: if I[i, j] == 0:
__pyx_t_227 = __pyx_v_i;
__pyx_t_226 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_227, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_226, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9310: for dum in range(1):
for (__pyx_t_230 = 0; __pyx_t_230 < 1; __pyx_t_230+=1) {
__pyx_v_dum = __pyx_t_230;
9311:
+9312: if i > 0:
__pyx_t_31 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9313: if I[i - 1, j] == Io:
__pyx_t_231 = (__pyx_v_i - 1);
__pyx_t_232 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_231, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_232, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9314: I[i, j] = Io
__pyx_t_233 = __pyx_v_i;
__pyx_t_234 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_233, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_234, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9315: Col[i, j, 2] = red
__pyx_t_235 = __pyx_v_i;
__pyx_t_236 = __pyx_v_j;
__pyx_t_237 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_235, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_236, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_237, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9316: Col[i, j, 1] = green
__pyx_t_238 = __pyx_v_i;
__pyx_t_239 = __pyx_v_j;
__pyx_t_240 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_238, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_239, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_240, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9317: Col[i, j, 0] = blue
__pyx_t_241 = __pyx_v_i;
__pyx_t_242 = __pyx_v_j;
__pyx_t_243 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_241, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_242, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_243, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9318: a[k] = 1
__pyx_t_244 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_244, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9319: break
goto __pyx_L33_break;
+9320: if j > 0:
__pyx_t_31 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9321: if I[i, j - 1] == Io:
__pyx_t_245 = __pyx_v_i;
__pyx_t_246 = (__pyx_v_j - 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_245, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_246, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9322: I[i, j] = Io
__pyx_t_247 = __pyx_v_i;
__pyx_t_248 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_247, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_248, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9323: Col[i, j, 2] = red
__pyx_t_249 = __pyx_v_i;
__pyx_t_250 = __pyx_v_j;
__pyx_t_251 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_249, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_250, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_251, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9324: Col[i, j, 1] = green
__pyx_t_252 = __pyx_v_i;
__pyx_t_253 = __pyx_v_j;
__pyx_t_254 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_252, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_253, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_254, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9325: Col[i, j, 0] = blue
__pyx_t_255 = __pyx_v_i;
__pyx_t_256 = __pyx_v_j;
__pyx_t_257 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_255, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_256, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_257, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9326: a[k] = 1
__pyx_t_258 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_258, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9327: break
goto __pyx_L33_break;
9328:
+9329: if j < n - 1:
__pyx_t_31 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
+9330: if I[i, j + 1] == Io:
__pyx_t_259 = __pyx_v_i;
__pyx_t_260 = (__pyx_v_j + 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_259, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_260, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9331: I[i, j] = Io
__pyx_t_261 = __pyx_v_i;
__pyx_t_262 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_261, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_262, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9332: Col[i, j, 2] = red
__pyx_t_263 = __pyx_v_i;
__pyx_t_264 = __pyx_v_j;
__pyx_t_265 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_263, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_264, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_265, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9333: Col[i, j, 1] = green
__pyx_t_266 = __pyx_v_i;
__pyx_t_267 = __pyx_v_j;
__pyx_t_268 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_266, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_267, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_268, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9334: Col[i, j, 0] = blue
__pyx_t_269 = __pyx_v_i;
__pyx_t_270 = __pyx_v_j;
__pyx_t_271 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_269, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_270, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_271, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9335: a[k] = 1
__pyx_t_272 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_272, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9336: break
goto __pyx_L33_break;
9337:
9338:
+9339: if i < m - 1:
__pyx_t_31 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
}
__pyx_L33_break:;
+9340: if I[i + 1, j] == Io:
__pyx_t_273 = (__pyx_v_i + 1);
__pyx_t_274 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_273, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_274, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9341: I[i, j] = Io
__pyx_t_275 = __pyx_v_i;
__pyx_t_276 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_275, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_276, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9342: Col[i, j, 2] = red
__pyx_t_277 = __pyx_v_i;
__pyx_t_278 = __pyx_v_j;
__pyx_t_279 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_277, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_278, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_279, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9343: Col[i, j, 1] = green
__pyx_t_280 = __pyx_v_i;
__pyx_t_281 = __pyx_v_j;
__pyx_t_282 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_280, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_281, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_282, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9344: Col[i, j, 0] = blue
__pyx_t_283 = __pyx_v_i;
__pyx_t_284 = __pyx_v_j;
__pyx_t_285 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_283, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_284, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_285, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9345: a[k] = 1
__pyx_t_286 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_286, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9346: break
goto __pyx_L33_break;
9347:
9348:
+9349: i, j = xo - deli, yo - delj
__pyx_t_287 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_288 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_287;
__pyx_v_j = __pyx_t_288;
+9350: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_228 = (0 <= __pyx_v_i);
if (__pyx_t_228) {
__pyx_t_228 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_229 = (__pyx_t_228 != 0);
if (__pyx_t_229) {
} else {
__pyx_t_31 = __pyx_t_229;
goto __pyx_L43_bool_binop_done;
}
__pyx_t_229 = (0 <= __pyx_v_j);
if (__pyx_t_229) {
__pyx_t_229 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_228 = (__pyx_t_229 != 0);
__pyx_t_31 = __pyx_t_228;
__pyx_L43_bool_binop_done:;
if (__pyx_t_31) {
/* … */
}
+9351: if I[i, j] == 0:
__pyx_t_288 = __pyx_v_i;
__pyx_t_287 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_288, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_287, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9352: for dum in range(1):
for (__pyx_t_230 = 0; __pyx_t_230 < 1; __pyx_t_230+=1) {
__pyx_v_dum = __pyx_t_230;
9353:
+9354: if i > 0:
__pyx_t_31 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9355: if I[i - 1, j] == Io:
__pyx_t_289 = (__pyx_v_i - 1);
__pyx_t_290 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_289, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_290, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9356: I[i, j] = Io
__pyx_t_291 = __pyx_v_i;
__pyx_t_292 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_291, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_292, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9357: Col[i, j, 2] = red
__pyx_t_293 = __pyx_v_i;
__pyx_t_294 = __pyx_v_j;
__pyx_t_295 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_293, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_294, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_295, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9358: Col[i, j, 1] = green
__pyx_t_296 = __pyx_v_i;
__pyx_t_297 = __pyx_v_j;
__pyx_t_298 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_296, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_297, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_298, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9359: Col[i, j, 0] = blue
__pyx_t_299 = __pyx_v_i;
__pyx_t_300 = __pyx_v_j;
__pyx_t_301 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_299, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_300, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_301, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9360: a[k] = 1
__pyx_t_302 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_302, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9361: break
goto __pyx_L47_break;
+9362: if j > 0:
__pyx_t_31 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9363: if I[i, j - 1] == Io:
__pyx_t_303 = __pyx_v_i;
__pyx_t_304 = (__pyx_v_j - 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_303, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_304, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9364: I[i, j] = Io
__pyx_t_305 = __pyx_v_i;
__pyx_t_306 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_305, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_306, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9365: Col[i, j, 2] = red
__pyx_t_307 = __pyx_v_i;
__pyx_t_308 = __pyx_v_j;
__pyx_t_309 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_307, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_308, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_309, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9366: Col[i, j, 1] = green
__pyx_t_310 = __pyx_v_i;
__pyx_t_311 = __pyx_v_j;
__pyx_t_312 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_310, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_311, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_312, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9367: Col[i, j, 0] = blue
__pyx_t_313 = __pyx_v_i;
__pyx_t_314 = __pyx_v_j;
__pyx_t_315 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_313, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_314, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_315, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9368: a[k] = 1
__pyx_t_316 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_316, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9369: break
goto __pyx_L47_break;
9370:
+9371: if j < n - 1:
__pyx_t_31 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
+9372: if I[i, j + 1] == Io:
__pyx_t_317 = __pyx_v_i;
__pyx_t_318 = (__pyx_v_j + 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_317, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_318, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9373: I[i, j] = Io
__pyx_t_319 = __pyx_v_i;
__pyx_t_320 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_319, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_320, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9374: Col[i, j, 2] = red
__pyx_t_321 = __pyx_v_i;
__pyx_t_322 = __pyx_v_j;
__pyx_t_323 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_321, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_322, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_323, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9375: Col[i, j, 1] = green
__pyx_t_324 = __pyx_v_i;
__pyx_t_325 = __pyx_v_j;
__pyx_t_326 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_324, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_325, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_326, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9376: Col[i, j, 0] = blue
__pyx_t_327 = __pyx_v_i;
__pyx_t_328 = __pyx_v_j;
__pyx_t_329 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_327, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_328, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_329, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9377: a[k] = 1
__pyx_t_330 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_330, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9378: break
goto __pyx_L47_break;
9379:
9380:
+9381: if i < m - 1:
__pyx_t_31 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
}
__pyx_L47_break:;
+9382: if I[i + 1, j] == Io:
__pyx_t_331 = (__pyx_v_i + 1);
__pyx_t_332 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_331, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_332, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9383: I[i, j] = Io
__pyx_t_333 = __pyx_v_i;
__pyx_t_334 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_333, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_334, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9384: Col[i, j, 2] = red
__pyx_t_335 = __pyx_v_i;
__pyx_t_336 = __pyx_v_j;
__pyx_t_337 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_335, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_336, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_337, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9385: Col[i, j, 1] = green
__pyx_t_338 = __pyx_v_i;
__pyx_t_339 = __pyx_v_j;
__pyx_t_340 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_338, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_339, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_340, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9386: Col[i, j, 0] = blue
__pyx_t_341 = __pyx_v_i;
__pyx_t_342 = __pyx_v_j;
__pyx_t_343 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_341, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_342, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_343, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9387: a[k] = 1
__pyx_t_344 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_344, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9388: break
goto __pyx_L47_break;
9389:
9390:
+9391: for deli in range(0, -delX - 1, -1):
__pyx_t_222 = ((-__pyx_v_delX) - 1);
for (__pyx_t_223 = 0; __pyx_t_223 > __pyx_t_222; __pyx_t_223-=1) {
__pyx_v_deli = __pyx_t_223;
+9392: for delj in range(0, delY + 1):
__pyx_t_224 = (__pyx_v_delY + 1);
for (__pyx_t_225 = 0; __pyx_t_225 < __pyx_t_224; __pyx_t_225+=1) {
__pyx_v_delj = __pyx_t_225;
+9393: if ((deli * c - delj * s) / MAJ) ** 2 + ((deli * s + delj * c) / MIN) ** 2 <= 1:
__pyx_t_31 = (((powf((((__pyx_v_deli * __pyx_v_c) - (__pyx_v_delj * __pyx_v_s)) / __pyx_v_MAJ), 2.0) + powf((((__pyx_v_deli * __pyx_v_s) + (__pyx_v_delj * __pyx_v_c)) / __pyx_v_MIN), 2.0)) <= 1.0) != 0);
if (__pyx_t_31) {
/* … */
}
}
}
9394:
+9395: i, j = xo + deli, yo + delj
__pyx_t_345 = (__pyx_v_xo + __pyx_v_deli);
__pyx_t_346 = (__pyx_v_yo + __pyx_v_delj);
__pyx_v_i = __pyx_t_345;
__pyx_v_j = __pyx_t_346;
+9396: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_228 = (0 <= __pyx_v_i);
if (__pyx_t_228) {
__pyx_t_228 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_229 = (__pyx_t_228 != 0);
if (__pyx_t_229) {
} else {
__pyx_t_31 = __pyx_t_229;
goto __pyx_L62_bool_binop_done;
}
__pyx_t_229 = (0 <= __pyx_v_j);
if (__pyx_t_229) {
__pyx_t_229 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_228 = (__pyx_t_229 != 0);
__pyx_t_31 = __pyx_t_228;
__pyx_L62_bool_binop_done:;
if (__pyx_t_31) {
/* … */
}
+9397: if I[i, j] == 0:
__pyx_t_346 = __pyx_v_i;
__pyx_t_345 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_346, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_345, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9398: for dum in range(1):
for (__pyx_t_230 = 0; __pyx_t_230 < 1; __pyx_t_230+=1) {
__pyx_v_dum = __pyx_t_230;
9399:
+9400: if i > 0:
__pyx_t_31 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9401: if I[i - 1, j] == Io:
__pyx_t_347 = (__pyx_v_i - 1);
__pyx_t_348 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_347, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_348, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9402: I[i, j] = Io
__pyx_t_349 = __pyx_v_i;
__pyx_t_350 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_349, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_350, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9403: Col[i, j, 2] = red
__pyx_t_351 = __pyx_v_i;
__pyx_t_352 = __pyx_v_j;
__pyx_t_353 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_351, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_352, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_353, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9404: Col[i, j, 1] = green
__pyx_t_354 = __pyx_v_i;
__pyx_t_355 = __pyx_v_j;
__pyx_t_356 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_354, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_355, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_356, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9405: Col[i, j, 0] = blue
__pyx_t_357 = __pyx_v_i;
__pyx_t_358 = __pyx_v_j;
__pyx_t_359 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_357, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_358, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_359, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9406: a[k] = 1
__pyx_t_360 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_360, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9407: break
goto __pyx_L66_break;
+9408: if j > 0:
__pyx_t_31 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9409: if I[i, j - 1] == Io:
__pyx_t_361 = __pyx_v_i;
__pyx_t_362 = (__pyx_v_j - 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_361, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_362, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9410: I[i, j] = Io
__pyx_t_363 = __pyx_v_i;
__pyx_t_364 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_363, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_364, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9411: Col[i, j, 2] = red
__pyx_t_365 = __pyx_v_i;
__pyx_t_366 = __pyx_v_j;
__pyx_t_367 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_365, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_366, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_367, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9412: Col[i, j, 1] = green
__pyx_t_368 = __pyx_v_i;
__pyx_t_369 = __pyx_v_j;
__pyx_t_370 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_368, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_369, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_370, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9413: Col[i, j, 0] = blue
__pyx_t_371 = __pyx_v_i;
__pyx_t_372 = __pyx_v_j;
__pyx_t_373 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_371, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_372, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_373, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9414: a[k] = 1
__pyx_t_374 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_374, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9415: break
goto __pyx_L66_break;
9416:
+9417: if j < n - 1:
__pyx_t_31 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
+9418: if I[i, j + 1] == Io:
__pyx_t_375 = __pyx_v_i;
__pyx_t_376 = (__pyx_v_j + 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_375, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_376, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9419: I[i, j] = Io
__pyx_t_377 = __pyx_v_i;
__pyx_t_378 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_377, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_378, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9420: Col[i, j, 2] = red
__pyx_t_379 = __pyx_v_i;
__pyx_t_380 = __pyx_v_j;
__pyx_t_381 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_379, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_380, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_381, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9421: Col[i, j, 1] = green
__pyx_t_382 = __pyx_v_i;
__pyx_t_383 = __pyx_v_j;
__pyx_t_384 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_382, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_383, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_384, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9422: Col[i, j, 0] = blue
__pyx_t_385 = __pyx_v_i;
__pyx_t_386 = __pyx_v_j;
__pyx_t_387 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_385, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_386, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_387, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9423: a[k] = 1
__pyx_t_388 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_388, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9424: break
goto __pyx_L66_break;
9425:
9426:
+9427: if i < m - 1:
__pyx_t_31 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
}
__pyx_L66_break:;
+9428: if I[i + 1, j] == Io:
__pyx_t_389 = (__pyx_v_i + 1);
__pyx_t_390 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_389, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_390, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9429: I[i, j] = Io
__pyx_t_391 = __pyx_v_i;
__pyx_t_392 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_391, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_392, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9430: Col[i, j, 2] = red
__pyx_t_393 = __pyx_v_i;
__pyx_t_394 = __pyx_v_j;
__pyx_t_395 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_393, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_394, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_395, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9431: Col[i, j, 1] = green
__pyx_t_396 = __pyx_v_i;
__pyx_t_397 = __pyx_v_j;
__pyx_t_398 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_396, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_397, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_398, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9432: Col[i, j, 0] = blue
__pyx_t_399 = __pyx_v_i;
__pyx_t_400 = __pyx_v_j;
__pyx_t_401 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_399, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_400, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_401, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9433: a[k] = 1
__pyx_t_402 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_402, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9434: break
goto __pyx_L66_break;
9435:
9436:
+9437: i, j = xo - deli, yo - delj
__pyx_t_403 = (__pyx_v_xo - __pyx_v_deli);
__pyx_t_404 = (__pyx_v_yo - __pyx_v_delj);
__pyx_v_i = __pyx_t_403;
__pyx_v_j = __pyx_t_404;
+9438: if 0 <= i <= m - 1 and 0 <= j <= n - 1:
__pyx_t_228 = (0 <= __pyx_v_i);
if (__pyx_t_228) {
__pyx_t_228 = (__pyx_v_i <= (__pyx_v_m - 1));
}
__pyx_t_229 = (__pyx_t_228 != 0);
if (__pyx_t_229) {
} else {
__pyx_t_31 = __pyx_t_229;
goto __pyx_L76_bool_binop_done;
}
__pyx_t_229 = (0 <= __pyx_v_j);
if (__pyx_t_229) {
__pyx_t_229 = (__pyx_v_j <= (__pyx_v_n - 1));
}
__pyx_t_228 = (__pyx_t_229 != 0);
__pyx_t_31 = __pyx_t_228;
__pyx_L76_bool_binop_done:;
if (__pyx_t_31) {
/* … */
}
+9439: if I[i, j] == 0:
__pyx_t_404 = __pyx_v_i;
__pyx_t_403 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_404, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_403, __pyx_pybuffernd_I.diminfo[1].strides)) == 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9440: for dum in range(1):
for (__pyx_t_230 = 0; __pyx_t_230 < 1; __pyx_t_230+=1) {
__pyx_v_dum = __pyx_t_230;
9441:
+9442: if i > 0:
__pyx_t_31 = ((__pyx_v_i > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9443: if I[i - 1, j] == Io:
__pyx_t_405 = (__pyx_v_i - 1);
__pyx_t_406 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_405, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_406, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9444: I[i, j] = Io
__pyx_t_407 = __pyx_v_i;
__pyx_t_408 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_407, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_408, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9445: Col[i, j, 2] = red
__pyx_t_409 = __pyx_v_i;
__pyx_t_410 = __pyx_v_j;
__pyx_t_411 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_409, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_410, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_411, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9446: Col[i, j, 1] = green
__pyx_t_412 = __pyx_v_i;
__pyx_t_413 = __pyx_v_j;
__pyx_t_414 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_412, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_413, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_414, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9447: Col[i, j, 0] = blue
__pyx_t_415 = __pyx_v_i;
__pyx_t_416 = __pyx_v_j;
__pyx_t_417 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_415, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_416, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_417, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9448: a[k] = 1
__pyx_t_418 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_418, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9449: break
goto __pyx_L80_break;
+9450: if j > 0:
__pyx_t_31 = ((__pyx_v_j > 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9451: if I[i, j - 1] == Io:
__pyx_t_419 = __pyx_v_i;
__pyx_t_420 = (__pyx_v_j - 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_419, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_420, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9452: I[i, j] = Io
__pyx_t_421 = __pyx_v_i;
__pyx_t_422 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_421, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_422, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9453: Col[i, j, 2] = red
__pyx_t_423 = __pyx_v_i;
__pyx_t_424 = __pyx_v_j;
__pyx_t_425 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_423, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_424, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_425, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9454: Col[i, j, 1] = green
__pyx_t_426 = __pyx_v_i;
__pyx_t_427 = __pyx_v_j;
__pyx_t_428 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_426, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_427, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_428, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9455: Col[i, j, 0] = blue
__pyx_t_429 = __pyx_v_i;
__pyx_t_430 = __pyx_v_j;
__pyx_t_431 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_429, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_430, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_431, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9456: a[k] = 1
__pyx_t_432 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_432, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9457: break
goto __pyx_L80_break;
9458:
+9459: if j < n - 1:
__pyx_t_31 = ((__pyx_v_j < (__pyx_v_n - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
+9460: if I[i, j + 1] == Io:
__pyx_t_433 = __pyx_v_i;
__pyx_t_434 = (__pyx_v_j + 1);
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_433, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_434, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9461: I[i, j] = Io
__pyx_t_435 = __pyx_v_i;
__pyx_t_436 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_435, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_436, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9462: Col[i, j, 2] = red
__pyx_t_437 = __pyx_v_i;
__pyx_t_438 = __pyx_v_j;
__pyx_t_439 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_437, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_438, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_439, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9463: Col[i, j, 1] = green
__pyx_t_440 = __pyx_v_i;
__pyx_t_441 = __pyx_v_j;
__pyx_t_442 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_440, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_441, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_442, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9464: Col[i, j, 0] = blue
__pyx_t_443 = __pyx_v_i;
__pyx_t_444 = __pyx_v_j;
__pyx_t_445 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_443, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_444, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_445, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9465: a[k] = 1
__pyx_t_446 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_446, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9466: break
goto __pyx_L80_break;
9467:
9468:
+9469: if i < m - 1:
__pyx_t_31 = ((__pyx_v_i < (__pyx_v_m - 1)) != 0);
if (__pyx_t_31) {
/* … */
}
}
__pyx_L80_break:;
+9470: if I[i + 1, j] == Io:
__pyx_t_447 = (__pyx_v_i + 1);
__pyx_t_448 = __pyx_v_j;
__pyx_t_31 = (((*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_447, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_448, __pyx_pybuffernd_I.diminfo[1].strides)) == __pyx_v_Io) != 0);
if (__pyx_t_31) {
/* … */
}
+9471: I[i, j] = Io
__pyx_t_449 = __pyx_v_i;
__pyx_t_450 = __pyx_v_j;
*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_int64_t *, __pyx_pybuffernd_I.rcbuffer->pybuffer.buf, __pyx_t_449, __pyx_pybuffernd_I.diminfo[0].strides, __pyx_t_450, __pyx_pybuffernd_I.diminfo[1].strides) = __pyx_v_Io;
+9472: Col[i, j, 2] = red
__pyx_t_451 = __pyx_v_i;
__pyx_t_452 = __pyx_v_j;
__pyx_t_453 = 2;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_451, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_452, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_453, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_red;
+9473: Col[i, j, 1] = green
__pyx_t_454 = __pyx_v_i;
__pyx_t_455 = __pyx_v_j;
__pyx_t_456 = 1;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_454, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_455, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_456, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_green;
+9474: Col[i, j, 0] = blue
__pyx_t_457 = __pyx_v_i;
__pyx_t_458 = __pyx_v_j;
__pyx_t_459 = 0;
*__Pyx_BufPtrStrided3d(__pyx_t_5numpy_float64_t *, __pyx_pybuffernd_Col.rcbuffer->pybuffer.buf, __pyx_t_457, __pyx_pybuffernd_Col.diminfo[0].strides, __pyx_t_458, __pyx_pybuffernd_Col.diminfo[1].strides, __pyx_t_459, __pyx_pybuffernd_Col.diminfo[2].strides) = __pyx_v_blue;
+9475: a[k] = 1
__pyx_t_460 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_460, __pyx_pybuffernd_a.diminfo[0].strides) = 1;
+9476: break
goto __pyx_L80_break;
9477:
9478:
9479:
+9480: if a[k] == 0:
__pyx_t_222 = __pyx_v_k;
__pyx_t_31 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_222, __pyx_pybuffernd_a.diminfo[0].strides)) == 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9481: xmin = max(0, xo - delX)
__pyx_t_223 = (__pyx_v_xo - __pyx_v_delX);
__pyx_t_230 = 0;
if (((__pyx_t_223 > __pyx_t_230) != 0)) {
__pyx_t_224 = __pyx_t_223;
} else {
__pyx_t_224 = __pyx_t_230;
}
__pyx_v_xmin = __pyx_t_224;
+9482: xmax = min(m - 1, xo + delX)
__pyx_t_224 = (__pyx_v_xo + __pyx_v_delX);
__pyx_t_223 = (__pyx_v_m - 1);
if (((__pyx_t_224 < __pyx_t_223) != 0)) {
__pyx_t_225 = __pyx_t_224;
} else {
__pyx_t_225 = __pyx_t_223;
}
__pyx_v_xmax = __pyx_t_225;
+9483: ymin = max(0, yo - delY)
__pyx_t_225 = (__pyx_v_yo - __pyx_v_delY);
__pyx_t_230 = 0;
if (((__pyx_t_225 > __pyx_t_230) != 0)) {
__pyx_t_224 = __pyx_t_225;
} else {
__pyx_t_224 = __pyx_t_230;
}
__pyx_v_ymin = __pyx_t_224;
+9484: ymax = min(n - 1, yo + delY)
__pyx_t_224 = (__pyx_v_yo + __pyx_v_delY);
__pyx_t_225 = (__pyx_v_n - 1);
if (((__pyx_t_224 < __pyx_t_225) != 0)) {
__pyx_t_223 = __pyx_t_224;
} else {
__pyx_t_223 = __pyx_t_225;
}
__pyx_v_ymax = __pyx_t_223;
+9485: a[k] = checkalive(I, m, n, Io, xmin, xmax, ymin, ymax)
__pyx_t_223 = __pyx_v_k;
*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int8_t *, __pyx_pybuffernd_a.rcbuffer->pybuffer.buf, __pyx_t_223, __pyx_pybuffernd_a.diminfo[0].strides) = __pyx_f_9libEVOLVE_checkalive(((PyArrayObject *)__pyx_v_I), __pyx_v_m, __pyx_v_n, __pyx_v_Io, __pyx_v_xmin, __pyx_v_xmax, __pyx_v_ymin, __pyx_v_ymax);
9486:
+9487: showriteframe(sa, sf, fd, aAXIS, I, Col, p, Iter, framepause)
__pyx_f_9libEVOLVE_showriteframe(__pyx_v_sa, __pyx_v_sf, __pyx_v_fd, __pyx_v_aAXIS, ((PyArrayObject *)__pyx_v_I), ((PyArrayObject *)__pyx_v_Col), __pyx_v_p, __pyx_v_Iter, __pyx_v_framepause);
+9488: aAXIS = aAXIS + 1
__pyx_v_aAXIS = (__pyx_v_aAXIS + 1);
+9489: bAXIS = aAXIS / Rab
__pyx_v_bAXIS = (((float)__pyx_v_aAXIS) / __pyx_v_Rab);
+9490: cAXIS = aAXIS / Rac
__pyx_v_cAXIS = (((float)__pyx_v_aAXIS) / __pyx_v_Rac);
}
+9491: if asy == 0:
__pyx_t_31 = ((__pyx_v_asy == 0) != 0);
if (__pyx_t_31) {
/* … */
}
+9492: break
goto __pyx_L12_break;
9493: else:
+9494: if (I == Iold).all() == 1:
/*else*/ {
__pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_v_I), ((PyObject *)__pyx_v_Iold), Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9494, __pyx_L1_error)
__pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9494, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
__pyx_t_7 = NULL;
if (CYTHON_COMPILING_IN_CPYTHON && likely(PyMethod_Check(__pyx_t_26))) {
__pyx_t_7 = PyMethod_GET_SELF(__pyx_t_26);
if (likely(__pyx_t_7)) {
PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_26);
__Pyx_INCREF(__pyx_t_7);
__Pyx_INCREF(function);
__Pyx_DECREF_SET(__pyx_t_26, function);
}
}
if (__pyx_t_7) {
__pyx_t_9 = __Pyx_PyObject_CallOneArg(__pyx_t_26, __pyx_t_7); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9494, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
} else {
__pyx_t_9 = __Pyx_PyObject_CallNoArg(__pyx_t_26); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9494, __pyx_L1_error)
}
__Pyx_GOTREF(__pyx_t_9);
__Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
__pyx_t_26 = __Pyx_PyInt_EqObjC(__pyx_t_9, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9494, __pyx_L1_error)
__Pyx_GOTREF(__pyx_t_26);
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
__pyx_t_31 = __Pyx_PyObject_IsTrue(__pyx_t_26); if (unlikely(__pyx_t_31 < 0)) __PYX_ERR(0, 9494, __pyx_L1_error)
__Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
if (__pyx_t_31) {
/* … */
}
+9495: break
goto __pyx_L12_break;
9496: else:
+9497: Iold = I
/*else*/ {
{
__Pyx_BufFmt_StackElem __pyx_stack[1];
__Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer);
__pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)((PyArrayObject *)__pyx_v_I), &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack);
if (unlikely(__pyx_t_5 < 0)) {
PyErr_Fetch(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29);
if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Iold.rcbuffer->pybuffer, (PyObject*)__pyx_v_Iold, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
Py_XDECREF(__pyx_t_27); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_29);
__Pyx_RaiseBufferFallbackError();
} else {
PyErr_Restore(__pyx_t_27, __pyx_t_28, __pyx_t_29);
}
}
__pyx_pybuffernd_Iold.diminfo[0].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Iold.diminfo[0].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_Iold.diminfo[1].strides = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_Iold.diminfo[1].shape = __pyx_pybuffernd_Iold.rcbuffer->pybuffer.shape[1];
if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9497, __pyx_L1_error)
}
__Pyx_INCREF(((PyObject *)__pyx_v_I));
__Pyx_DECREF_SET(__pyx_v_Iold, ((PyArrayObject *)__pyx_v_I));
+9498: I = np.zeros((m, n), dtype=np.int64)
__pyx_t_26 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_26, __pyx_n_s_zeros); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_26 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_7 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_26); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_26); __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_7); __pyx_t_26 = 0; __pyx_t_7 = 0; __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); __pyx_t_8 = 0; __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_26 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_26, __pyx_n_s_int64); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_6) < 0) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9498, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (!(likely(((__pyx_t_6) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_6, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9498, __pyx_L1_error) __pyx_t_10 = ((PyArrayObject *)__pyx_t_6); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_I.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_29, &__pyx_t_28, &__pyx_t_27); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_I.rcbuffer->pybuffer, (PyObject*)__pyx_v_I, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 2, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_29); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_27); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_29, __pyx_t_28, __pyx_t_27); } } __pyx_pybuffernd_I.diminfo[0].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_I.diminfo[0].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_I.diminfo[1].strides = __pyx_pybuffernd_I.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_I.diminfo[1].shape = __pyx_pybuffernd_I.rcbuffer->pybuffer.shape[1]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9498, __pyx_L1_error) } __pyx_t_10 = 0; __Pyx_DECREF_SET(__pyx_v_I, ((PyArrayObject *)__pyx_t_6)); __pyx_t_6 = 0;
+9499: a = np.ones(p, dtype=np.int8)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ones); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_int8); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_t_26) < 0) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_26 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_t_7, __pyx_t_6); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9499, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (!(likely(((__pyx_t_26) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_26, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9499, __pyx_L1_error) __pyx_t_12 = ((PyArrayObject *)__pyx_t_26); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_a.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_t_12, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_a.rcbuffer->pybuffer, (PyObject*)__pyx_v_a, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int8_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_27); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_29); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_27, __pyx_t_28, __pyx_t_29); } } __pyx_pybuffernd_a.diminfo[0].strides = __pyx_pybuffernd_a.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_a.diminfo[0].shape = __pyx_pybuffernd_a.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9499, __pyx_L1_error) } __pyx_t_12 = 0; __Pyx_DECREF_SET(__pyx_v_a, ((PyArrayObject *)__pyx_t_26)); __pyx_t_26 = 0;
+9500: X , Y = morph.centroids(Iold, m, n, p)
__pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_morph); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_centroids); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_6 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_m); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_8 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_n); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_9 = __Pyx_PyInt_From_PY_LONG_LONG(__pyx_v_p); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_23 = NULL; __pyx_t_25 = 0; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_23 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_23)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_23); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); __pyx_t_25 = 1; } } __pyx_t_1 = PyTuple_New(4+__pyx_t_25); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (__pyx_t_23) { __Pyx_GIVEREF(__pyx_t_23); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_23); __pyx_t_23 = NULL; } __Pyx_INCREF(((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(((PyObject *)__pyx_v_Iold)); PyTuple_SET_ITEM(__pyx_t_1, 0+__pyx_t_25, ((PyObject *)__pyx_v_Iold)); __Pyx_GIVEREF(__pyx_t_6); PyTuple_SET_ITEM(__pyx_t_1, 1+__pyx_t_25, __pyx_t_6); __Pyx_GIVEREF(__pyx_t_8); PyTuple_SET_ITEM(__pyx_t_1, 2+__pyx_t_25, __pyx_t_8); __Pyx_GIVEREF(__pyx_t_9); PyTuple_SET_ITEM(__pyx_t_1, 3+__pyx_t_25, __pyx_t_9); __pyx_t_6 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_26 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_t_1, NULL); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if ((likely(PyTuple_CheckExact(__pyx_t_26))) || (PyList_CheckExact(__pyx_t_26))) { PyObject* sequence = __pyx_t_26; #if CYTHON_COMPILING_IN_CPYTHON Py_ssize_t size = Py_SIZE(sequence); #else Py_ssize_t size = PySequence_Size(sequence); #endif if (unlikely(size != 2)) { if (size > 2) __Pyx_RaiseTooManyValuesError(2); else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); __PYX_ERR(0, 9500, __pyx_L1_error) } #if CYTHON_COMPILING_IN_CPYTHON if (likely(PyTuple_CheckExact(sequence))) { __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); } else { __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_1 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); #else __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); #endif __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; } else { Py_ssize_t index = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_26); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 9500, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_t_32 = Py_TYPE(__pyx_t_9)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_32(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L92_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_1 = __pyx_t_32(__pyx_t_9); if (unlikely(!__pyx_t_1)) goto __pyx_L92_unpacking_failed; __Pyx_GOTREF(__pyx_t_1); if (__Pyx_IternextUnpackEndCheck(__pyx_t_32(__pyx_t_9), 2) < 0) __PYX_ERR(0, 9500, __pyx_L1_error) __pyx_t_32 = NULL; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; goto __pyx_L93_unpacking_done; __pyx_L92_unpacking_failed:; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_32 = NULL; if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index); __PYX_ERR(0, 9500, __pyx_L1_error) __pyx_L93_unpacking_done:; } if (!(likely(((__pyx_t_7) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_7, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9500, __pyx_L1_error) if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 9500, __pyx_L1_error) __pyx_t_13 = ((PyArrayObject *)__pyx_t_7); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_X.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_29, &__pyx_t_28, &__pyx_t_27); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_X.rcbuffer->pybuffer, (PyObject*)__pyx_v_X, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_29); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_27); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_29, __pyx_t_28, __pyx_t_27); } } __pyx_pybuffernd_X.diminfo[0].strides = __pyx_pybuffernd_X.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_X.diminfo[0].shape = __pyx_pybuffernd_X.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9500, __pyx_L1_error) } __pyx_t_13 = 0; __Pyx_DECREF_SET(__pyx_v_X, ((PyArrayObject *)__pyx_t_7)); __pyx_t_7 = 0; __pyx_t_14 = ((PyArrayObject *)__pyx_t_1); { __Pyx_BufFmt_StackElem __pyx_stack[1]; __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_Y.rcbuffer->pybuffer); __pyx_t_5 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_t_14, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack); if (unlikely(__pyx_t_5 < 0)) { PyErr_Fetch(&__pyx_t_27, &__pyx_t_28, &__pyx_t_29); if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_Y.rcbuffer->pybuffer, (PyObject*)__pyx_v_Y, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) { Py_XDECREF(__pyx_t_27); Py_XDECREF(__pyx_t_28); Py_XDECREF(__pyx_t_29); __Pyx_RaiseBufferFallbackError(); } else { PyErr_Restore(__pyx_t_27, __pyx_t_28, __pyx_t_29); } } __pyx_pybuffernd_Y.diminfo[0].strides = __pyx_pybuffernd_Y.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_Y.diminfo[0].shape = __pyx_pybuffernd_Y.rcbuffer->pybuffer.shape[0]; if (unlikely(__pyx_t_5 < 0)) __PYX_ERR(0, 9500, __pyx_L1_error) } __pyx_t_14 = 0; __Pyx_DECREF_SET(__pyx_v_Y, ((PyArrayObject *)__pyx_t_1)); __pyx_t_1 = 0;
+9501: Iter = Iter + 1
__pyx_v_Iter = (__pyx_v_Iter + 1);
}
}
}
__pyx_L12_break:;
9502:
+9503: toc = time.time()
__pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 9503, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_time); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 9503, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; if (CYTHON_COMPILING_IN_CPYTHON && unlikely(PyMethod_Check(__pyx_t_7))) { __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_7); if (likely(__pyx_t_1)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_7, function); } } if (__pyx_t_1) { __pyx_t_26 = __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9503, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { __pyx_t_26 = __Pyx_PyObject_CallNoArg(__pyx_t_7); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9503, __pyx_L1_error) } __Pyx_GOTREF(__pyx_t_26); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_t_30 = __pyx_PyFloat_AsDouble(__pyx_t_26); if (unlikely((__pyx_t_30 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 9503, __pyx_L1_error) __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; __pyx_v_toc = __pyx_t_30;
+9504: obj.exetime = toc - tic
__pyx_t_26 = PyFloat_FromDouble((__pyx_v_toc - __pyx_v_tic)); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 9504, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_26); if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_exetime, __pyx_t_26) < 0) __PYX_ERR(0, 9504, __pyx_L1_error) __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0;
+9505: obj.X = X
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_X, ((PyObject *)__pyx_v_X)) < 0) __PYX_ERR(0, 9505, __pyx_L1_error)
+9506: obj.Y = Y
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Y, ((PyObject *)__pyx_v_Y)) < 0) __PYX_ERR(0, 9506, __pyx_L1_error)
+9507: obj.I = I
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_I, ((PyObject *)__pyx_v_I)) < 0) __PYX_ERR(0, 9507, __pyx_L1_error)
+9508: obj.Thetavalues = Theta
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Thetavalues, ((PyObject *)__pyx_v_Theta)) < 0) __PYX_ERR(0, 9508, __pyx_L1_error)
+9509: obj.Col = Col
if (__Pyx_PyObject_SetAttrStr(__pyx_v_obj, __pyx_n_s_Col, ((PyObject *)__pyx_v_Col)) < 0) __PYX_ERR(0, 9509, __pyx_L1_error)
+9510: return obj
__Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_obj); __pyx_r = __pyx_v_obj; goto __pyx_L0;